-
Notifications
You must be signed in to change notification settings - Fork 10
[Dataflow] Extractor instrumentation is here! #2204
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Dataflow] Extractor instrumentation is here! #2204
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
This PR introduces instrumentation capabilities for the dataflow extractor, allowing users to monitor and analyze how often each dataflow processor is called during analysis. The primary use case is enabling a heatmap display in the REPL that shows processor call frequencies.
Key changes:
- Adds a new configuration option
repl.dfProcessorHeatto enable dataflow processor instrumentation in the REPL - Introduces a flexible instrumentation hook
solver.instrument.dataflowExtractorsthat allows custom modification of dataflow processors - Enhances the config query output to show only updated configuration keys when changes are made
Reviewed changes
Copilot reviewed 7 out of 7 changed files in this pull request and generated 5 comments.
Show a summary per file
| File | Description |
|---|---|
| src/dataflow/instrument/instrument-dataflow-count.ts | New instrumentation function that wraps dataflow processors to count invocations per RType |
| src/dataflow/extractor.ts | Integrates the instrumentation hook into the dataflow graph production pipeline; adds optional chaining to control flow graph access |
| src/config.ts | Adds new configuration options for REPL processor heatmap and solver instrumentation hooks |
| src/cli/repl/core.ts | Implements heatmap display logic in REPL, setting up instrumentation when dfProcessorHeat is enabled |
| src/queries/catalog/config-query/config-query-format.ts | Enhances config query output to show only modified keys when updating configuration; adds helper functions for key collection and value retrieval |
| src/documentation/wiki-query.ts | Updates documentation to mention the new dfProcessorHeat configuration option |
| src/documentation/wiki-interface.ts | Adds instrument section to the example configuration structure in documentation |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
|
This pull request is included in v2.8.4 (see Release v2.8.4 (Extractor Instrumentation, Bugfixes, and Support for more Versions)). |
No description provided.