Skip to content
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

Generate action and trigger options in schema. #706

Conversation

jander-msft
Copy link
Member

  • Generate action and trigger options in schema.
  • Add display name descriptions to these options.
  • Add defaults for the optional properties.
  • Other small changes such as property renames and changing IncludePaths and ExcludePaths property to arrays.

Add display name descriptions to these options.
Add defaults for the optional properties.
@jander-msft jander-msft requested review from IEvangelist and a team as code owners August 11, 2021 03:35
Copy link
Contributor

@kelltrick kelltrick left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍

{
public const int MetricsIntervalSeconds = 1;
public const bool RequestRundown = true;
public const int BufferSizeMegabytes = 256;
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This seems like a big constant given our recommended container limits. Does this buffer not end up in our memory?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is the existing default when doing a trace, but I agree. I think we need to adjust these downward a bit.

The buffer ends up in the memory of the target application. It's the size of the buffer that events are put into just before the diagnostic server pulls them out and sends them over the event pipe. If an event source cannot put a new event into the buffer due to running out of room, the event is dropped relatively silently. This makes code that is listening for a start and stop event interesting because it has to guess whether the stop event just hasn't come through yet or was dropped.

@jander-msft jander-msft merged commit 9a41688 into dotnet:feature/triggers Aug 13, 2021
@jander-msft jander-msft deleted the dev/jander/action-trigger-schema branch August 13, 2021 03:27
jander-msft added a commit that referenced this pull request Sep 17, 2021
* Initial collection rule options, validation, and unit tests. (#688)

* Generate action and trigger options in schema. (#706)

Generate action and trigger options in schema.
Add display name descriptions to these options.
Add defaults for the optional properties.

* Create `Execute` collection rule action  (#710)

* Basic implementation and registration of actions and triggers (#736)

Initial interfaces for collection rule triggers.
Implement empty action and trigger implementations.
Implement startup trigger with special interface denoting it is a startup trigger.
Rename action provider and trigger provider to descriptor.
Register action and trigger implementations with descriptors.

* Execute Action - Testing (#742)

* Update trigger interfaces with callback, start, and stop notions. (#760)

Update trigger interfaces with callback, start, and stop notions.
Refactor options providers into operations implementations.

* Refactor host building into helper method (#769)

* Refactor host building into helper method.

* Triggers - Action List Executor (#768)

* Implement collection rule pipeline, event counter trigger, and tests. (#825)

Implement collection rule pipeline and event counter trigger.
Add tests for collection rule pipeline with real and test triggers and actions.

* Create CollectDump Collection Rule Action (#824)

* Fix CollectionRulePipelineTests failure due to callback registration timing. (#854)

* Collection rule service, logging, and some functional tests (#852)

* Implement collection rule service for starting rules.
Add logging throughout collection rule system.
Add some functional tests for collection rule system.

* Refactor common parameters into CollectionRuleContext.

* Add safe cancellation.

* Add collection rule completion timeouts.

* Refactor logging event IDs into separate shareable class.

* Adjust temporary directory creation and log cleanup failures.

* Remove CollectionRulePipeline.StartAsync; replace with callback.
Add safe awaiting for start tasks and run tasks.
Add more logging and adjust some log levels.

* Replace TestCommon dependency with Xunit.Assert (#874)

Co-authored-by: dotnet-maestro[bot] <42748379+dotnet-maestro[bot]@users.noreply.github.com>
Co-authored-by: kkeirstead <[email protected]>
Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
Co-authored-by: Wiktor Kopec <[email protected]>
Co-authored-by: Patrick Fenelon <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants