Skip to content
This repository was archived by the owner on Nov 1, 2023. It is now read-only.

Event export serializer #3543

Merged
merged 49 commits into from
Oct 10, 2023

Conversation

tevoinea
Copy link
Member

@tevoinea tevoinea commented Oct 3, 2023

Summary of the Pull Request

What is this about?

This PR introduces a new JsonConverter for sending events. It closes #3076 and closes #3381.

Info on Pull Request

What does this include?

  • A new feature flag EnableSlimEventSerialization which allows us to toggle the new behavior
  • A new JsonConverter EventExportConverter
  • Send 'slim' events to signalr queue and to webhooks queue
  • Events logged to AppInsights are not slim (useful for debugging)
  • Events stored in the events container are not slim (so that they can be retrieved in full capacity later via event id)
  • Tests

Validation Steps Performed

How does someone test & validate?

  • Unit tests for the JsonConverter
  • Manual testing for receiving webhooks

AdamL-Microsoft and others added 30 commits August 29, 2023 19:57
* Remove the retention policy setting (microsoft#3452)

---------

Co-authored-by: Cheick Keita <chkeita@microsoft.com>
* Redo-8.7.1-hotfix

---------

Co-authored-by: Cheick Keita <chkeita@microsoft.com>
…t#3467)

* Add field to ado config for checking duplicate work items

* Make duplicate fields nullable and add it to python models

* Update broken tests

* Update docs to include new ado_duplicate_fields property
Co-authored-by: Adam <103067949+AdamL-Microsoft@users.noreply.github.com>
Bumps [tokio](https://github.com/tokio-rs/tokio) from 1.30.0 to 1.32.0.
- [Release notes](https://github.com/tokio-rs/tokio/releases)
- [Commits](tokio-rs/tokio@tokio-1.30.0...tokio-1.32.0)

---
updated-dependencies:
- dependency-name: tokio
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [tokio](https://github.com/tokio-rs/tokio) from 1.30.0 to 1.32.0.
- [Release notes](https://github.com/tokio-rs/tokio/releases)
- [Commits](tokio-rs/tokio@tokio-1.30.0...tokio-1.32.0)

---
updated-dependencies:
- dependency-name: tokio
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [elsa](https://github.com/manishearth/elsa) from 1.8.1 to 1.9.0.
- [Commits](Manishearth/elsa@v1.8.1...v1.9.0)

---
updated-dependencies:
- dependency-name: elsa
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [tempfile](https://github.com/Stebalien/tempfile) from 3.7.1 to 3.8.0.
- [Changelog](https://github.com/Stebalien/tempfile/blob/master/CHANGELOG.md)
- [Commits](Stebalien/tempfile@v3.7.1...v3.8.0)

---
updated-dependencies:
- dependency-name: tempfile
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [tempfile](https://github.com/Stebalien/tempfile) from 3.7.1 to 3.8.0.
- [Changelog](https://github.com/Stebalien/tempfile/blob/master/CHANGELOG.md)
- [Commits](Stebalien/tempfile@v3.7.1...v3.8.0)

---
updated-dependencies:
- dependency-name: tempfile
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* Updating requirements.txt to accept >= onefuzztypes.

* Trying to loosen restriction.
Bumps [notify](https://github.com/notify-rs/notify) from 6.0.1 to 6.1.1.
- [Release notes](https://github.com/notify-rs/notify/releases)
- [Changelog](https://github.com/notify-rs/notify/blob/main/CHANGELOG.md)
- [Commits](notify-rs/notify@notify-6.0.1...notify-6.1.1)

---
updated-dependencies:
- dependency-name: notify
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [clap](https://github.com/clap-rs/clap) from 4.3.21 to 4.4.2.
- [Release notes](https://github.com/clap-rs/clap/releases)
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md)
- [Commits](clap-rs/clap@v4.3.21...v4.4.2)

---
updated-dependencies:
- dependency-name: clap
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [gimli](https://github.com/gimli-rs/gimli) from 0.27.3 to 0.28.0.
- [Changelog](https://github.com/gimli-rs/gimli/blob/master/CHANGELOG.md)
- [Commits](gimli-rs/gimli@0.27.3...0.28.0)

---
updated-dependencies:
- dependency-name: gimli
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [clap](https://github.com/clap-rs/clap) from 4.3.21 to 4.4.2.
- [Release notes](https://github.com/clap-rs/clap/releases)
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md)
- [Commits](clap-rs/clap@v4.3.21...v4.4.2)

---
updated-dependencies:
- dependency-name: clap
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [winreg](https://github.com/gentoo90/winreg-rs) from 0.50.0 to 0.51.0.
- [Release notes](https://github.com/gentoo90/winreg-rs/releases)
- [Changelog](https://github.com/gentoo90/winreg-rs/blob/master/CHANGELOG.md)
- [Commits](gentoo90/winreg-rs@v0.50.0...v0.51.0)

---
updated-dependencies:
- dependency-name: winreg
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Adam <103067949+AdamL-Microsoft@users.noreply.github.com>
* Starting integration tests

* Ready to test the test

* Parametrize test

* checkpoint

* Test works

* Run integration tests in pipeline

* fmt

* .

* -p

* Install clang

* quotes not required in yaml?

* Hopefully fixed windows?

* Try without killondrop

* lint

* small test

* another test

* Reuse core name

* Wrong step

* bump tokio?

* Try with rust

* make build happy

* Bump pete and small clean up

* Clean up and make the test pass regularly

* fix broken ci

* Lower the poll timeout

* Set the timeout in a nicer way

* fix windows

* fmt

* Include and copy pdbs

* Ignore if pdb is missing on linux

* It takes too long for coverage to be generated

* lint

* Only warn on missing coverage since it's flaky

* Fix windows build

* Small clean up

* Try lowering the poll delay

* fix coverage

* PR comments

* .

* Apparently make is missing?

* Remove aggressive step skipping in CI
* Fix sed checks for CLI versioning

* Fix.

* Fix.

* Changing build_cli

* Trying greater than

* Tring once more.

* Trying major minor

* trying to replace major minor

* Using major minor
Bumps [bytes](https://github.com/tokio-rs/bytes) from 1.4.0 to 1.5.0.
- [Release notes](https://github.com/tokio-rs/bytes/releases)
- [Changelog](https://github.com/tokio-rs/bytes/blob/master/CHANGELOG.md)
- [Commits](tokio-rs/bytes@v1.4.0...v1.5.0)

---
updated-dependencies:
- dependency-name: bytes
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* Add more comprehensive checks and better error messages to area/iteration path validation

* Join invalid chars with space instead of comma

* Make tree path validation more testable

* Add error code for invalid ADO project in config

* Write unit tests for tree path validation

* Format tree path unit tests

* Merge escape character and control character checks and clarify error message
* Improve handling of unexpected breakpoints

* fmt
* Fuzz coverage recording

* Update cargo.toml

* Update src/agent/coverage/fuzz/fuzz_targets/fuzz_target_record_coverage.rs

Co-authored-by: George Pollard <porges@porg.es>

* Fix fuzz

---------

Co-authored-by: George Pollard <porges@porg.es>
* Reporting coverage on task start up

* Moving metric up.
tevoinea and others added 10 commits September 21, 2023 17:31
* Compare task version to service version

* Swallow output when looking for appropriate name
* Create directories if they don't exist in the template

* fmt
- [x] ability to specify a retention period on a container, which applies to newly-created blobs
- [x] specify default retention periods in templates from CLI side 

There's a small breaking change to the Python JobHelper class.
Bumps [rayon](https://github.com/rayon-rs/rayon) from 1.7.0 to 1.8.0.
- [Changelog](https://github.com/rayon-rs/rayon/blob/master/RELEASES.md)
- [Commits](rayon-rs/rayon@rayon-core-v1.7.0...rayon-core-v1.8.0)

---
updated-dependencies:
- dependency-name: rayon
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [insta](https://github.com/mitsuhiko/insta) from 1.31.0 to 1.32.0.
- [Changelog](https://github.com/mitsuhiko/insta/blob/master/CHANGELOG.md)
- [Commits](mitsuhiko/insta@1.31.0...1.32.0)

---
updated-dependencies:
- dependency-name: insta
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* Disable  and  VM CLI commands.

* Formatting.

* More formatting.

* More formatting.

* Removing Repro check.
* Make modules and coverage allowlist case insensitive on Windows

* Tests and fmt

* PR comments

* fmt

* Debugging missing file coverage

* fmt

* Broken linux test

* Add a case insensitive transformer for better perf

* cargo fix
@codecov-commenter
Copy link

codecov-commenter commented Oct 3, 2023

Codecov Report

Merging #3543 (49c0c54) into main (e7b0dd5) will increase coverage by 0.07%.
The diff coverage is 83.07%.

@@            Coverage Diff             @@
##             main    #3543      +/-   ##
==========================================
+ Coverage   38.97%   39.05%   +0.07%     
==========================================
  Files         301      302       +1     
  Lines       36848    36903      +55     
==========================================
+ Hits        14363    14413      +50     
- Misses      22485    22490       +5     
Files Coverage Δ
...Service/ApiService/onefuzzlib/WebhookOperations.cs 37.43% <77.77%> (+1.72%) ⬆️
...Service/ApiService/onefuzzlib/events/Converters.cs 91.66% <91.66%> (ø)
src/ApiService/ApiService/onefuzzlib/Events.cs 69.23% <37.50%> (-1.46%) ⬇️

... and 4 files with indirect coverage changes

@tevoinea tevoinea marked this pull request as ready for review October 4, 2023 17:50
@tevoinea tevoinea requested review from chkeita and Porges October 6, 2023 14:17
@tevoinea tevoinea enabled auto-merge (squash) October 10, 2023 13:21
@tevoinea tevoinea merged commit 2f2a649 into microsoft:main Oct 10, 2023
# for free to subscribe to this conversation on GitHub. Already have an account? #.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

We are getting message to large exceptions for signalr events Only include fixed length fields in events
8 participants