Skip to content

telemetry: remove asset_id - #779

Draft
bfjelds (bfjelds) wants to merge 15 commits into
user/bfjelds/mjolnir/command-error-metricfrom
user/bfjelds/mjolnir/installation-servicing-id
Draft

telemetry: remove asset_id#779
bfjelds (bfjelds) wants to merge 15 commits into
user/bfjelds/mjolnir/command-error-metricfrom
user/bfjelds/mjolnir/installation-servicing-id

Conversation

@bfjelds

@bfjelds bfjelds (bfjelds) commented Sep 4, 2026

Copy link
Copy Markdown
Member

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
1 pipeline(s) were filtered out due to trigger conditions.
There may be pipelines that require an authorized user to comment /azp run to run.

@bfjelds bfjelds (bfjelds) changed the title telemetry: remove asset_id, rename correlation_id to installation_id (install-time creation), add persistent servicing_id telemetry: remove asset_id, rename correlation_id to installation_id, add persistent servicing_id Sep 4, 2026
--filepath "$METRICS_FILE" \
--mapping "$KUSTO_TABLE_MAPPING"
--mapping "$KUSTO_TABLE_MAPPING" \
--ignore-schema

@bfjelds bfjelds (bfjelds) Sep 5, 2026

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

adding ignore-schema because we removed asset_id which is a required field in the telemetry schema.

other options would be:

  • remove asset_id from required list in schema
  • use asset_id as installation_id

@bfjelds
bfjelds (bfjelds) force-pushed the user/bfjelds/mjolnir/installation-servicing-id branch 2 times, most recently from 1599407 to c96c0af Compare September 5, 2026 01:36
@bfjelds
bfjelds (bfjelds) requested a balanced review from Copilot September 5, 2026 01:38

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

🟡 Changes recommended

Install finalization overwrites the staged servicing ID, breaking cross-invocation correlation.

Once you've addressed the issues Copilot identified, you can request another Copilot review.

Pull request overview

Updates telemetry identifiers to improve privacy and correlate servicing operations across invocations.

Changes:

  • Removes hardware-derived asset_id and renames correlation_id to installation_id.
  • Persists and emits per-servicing-operation servicing_id values.
  • Adjusts telemetry documentation and Kusto ingestion.
File summaries
File Description
docs/Reference/Agent-Configuration.md Documents telemetry identifiers.
crates/trident/src/main.rs Passes the installation-ID handle to App Insights.
crates/trident/src/logging/tracestream.rs Emits installation and servicing IDs.
crates/trident/src/logging/operation_context.rs Tracks servicing IDs per invocation.
crates/trident/src/logging/appinsights.rs Adds identifiers to App Insights events.
crates/trident/src/lib.rs Creates and restores identifiers during servicing.
crates/trident/src/engine/update.rs Creates servicing IDs for updates.
crates/trident/src/engine/manual_rollback/mod.rs Handles rollback servicing IDs.
crates/trident/src/datastore.rs Persists installation and servicing IDs.
.pipelines/templates/stages/testing_common/scripts/upload_metrics.sh Uploads metrics without schema validation.
Review details
  • Files reviewed: 10/10 changed files
  • Comments generated: 1
  • Review effort level: Balanced

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment thread crates/trident/src/lib.rs Outdated
@bfjelds
bfjelds (bfjelds) force-pushed the user/bfjelds/mjolnir/command-error-metric branch from a97f856 to a2e921d Compare September 5, 2026 16:21
@bfjelds
bfjelds (bfjelds) force-pushed the user/bfjelds/mjolnir/installation-servicing-id branch from c96c0af to bcab5b0 Compare September 5, 2026 16:31
@bfjelds
bfjelds (bfjelds) requested a balanced review from Copilot September 5, 2026 16:32

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

🟡 Changes recommended

Servicing IDs are assigned before rollback eligibility is known and are not restored for post-reboot commit metrics.

Once you've addressed the issues Copilot identified, you can request another Copilot review.

Review details
  • Files reviewed: 11/11 changed files
  • Comments generated: 2
  • Review effort level: Balanced

Comment thread crates/trident/src/engine/manual_rollback/mod.rs Outdated
Comment thread crates/trident/src/lib.rs Outdated
@bfjelds
bfjelds (bfjelds) force-pushed the user/bfjelds/mjolnir/installation-servicing-id branch from bcab5b0 to 941e873 Compare September 5, 2026 17:02
@bfjelds
bfjelds (bfjelds) requested a balanced review from Copilot September 5, 2026 19:18

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

🟡 Changes recommended

The core servicing-ID serialization path lacks sink-level regression coverage.

Once you've addressed the issues Copilot identified, you can request another Copilot review.

Review details
  • Files reviewed: 11/11 changed files
  • Comments generated: 1
  • Review effort level: Balanced

Comment thread crates/trident/src/logging/tracestream.rs Outdated
@bfjelds
bfjelds (bfjelds) force-pushed the user/bfjelds/mjolnir/command-error-metric branch 2 times, most recently from f6f0da6 to 5e7b215 Compare September 5, 2026 19:51
@bfjelds
bfjelds (bfjelds) force-pushed the user/bfjelds/mjolnir/installation-servicing-id branch from 941e873 to 6f8944b Compare September 5, 2026 19:58
@bfjelds
bfjelds (bfjelds) requested a balanced review from Copilot September 5, 2026 20:07

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

🟢 Approval recommended

The updated diff addresses the prior lifecycle and serialization gaps, with no remaining blocking correctness issues found.

Review details
  • Files reviewed: 11/11 changed files
  • Comments generated: 0 new
  • Review effort level: Balanced

@bfjelds
bfjelds (bfjelds) force-pushed the user/bfjelds/mjolnir/command-error-metric branch from 5e7b215 to e6ac4c4 Compare September 5, 2026 20:36
@bfjelds
bfjelds (bfjelds) force-pushed the user/bfjelds/mjolnir/installation-servicing-id branch from 6f8944b to 7256f43 Compare September 5, 2026 20:41
@bfjelds
bfjelds (bfjelds) requested a balanced review from Copilot September 5, 2026 20:44
bfjelds (bfjelds) added a commit that referenced this pull request Sep 7, 2026
PR #778 (command-error-metric) was amended a second time to remove the
tests/images Telemetry=OptIn opt-in changes, which had come back in
through 778's own original commit ancestry (778 was originally branched
from a point in history that predated the tests/images split-out on
PR #774). Those changes now belong in a new, dedicated PR stacked on
#779, so this squash-merge excludes them the same way, keeping #779
free of tests/images changes as well.

Otherwise this is the same squash-merge of #779's original, unsquashed
content (the Option A TraceStream/servicing-id refactor) onto the new
#778 tip as before -- Rust source resolutions confirmed byte-identical
to the previously-validated pr779-squash-v2.

No functional changes vs. the previously pushed #779 content aside
from dropping tests/images; verified fmt/clippy(--lib/--bins)/tests
(--lib/--bins).
@bfjelds
bfjelds (bfjelds) force-pushed the user/bfjelds/mjolnir/installation-servicing-id branch from e8a0cd1 to 0568a97 Compare September 7, 2026 18:45
bfjelds (bfjelds) added a commit that referenced this pull request Sep 7, 2026
Adds a shared tests/images/common/trident.conf with Telemetry=OptIn and
references it from every test/dev image definition, enabling Application
Insights telemetry opt-in by default across test/dev images.

Originally part of PR #774 (appinsights-telemetry); split out to its own
PR, stacked on PR #779 (installation-servicing-id), since these
image-definition changes are unrelated to the core telemetry plumbing
and servicing-ID work in the earlier PRs in the stack.
@bfjelds
bfjelds (bfjelds) force-pushed the user/bfjelds/mjolnir/command-error-metric branch from a76c89f to 558c732 Compare September 7, 2026 18:49
Also passes --ignore-schema to the Kusto ingestor in

.pipelines/templates/stages/testing_common/scripts/upload_metrics.sh,

since this PR changes the local metrics schema (installation_id

rename, servicing_id addition, asset_id removal) and the pipeline

must not fail ingestion on the resulting schema drift.
…fixes)

# Conflicts:
#	docs/Reference/Telemetry.md

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

🟢 Approval recommended

The implementation consistently removes asset_id and updates the affected ingestion path and documentation.

Review details
  • Files reviewed: 3/3 changed files
  • Comments generated: 0 new
  • Review effort level: Balanced

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

🟢 Approval recommended

The implementation consistently removes asset_id; only a non-blocking stale test comment remains.

Review details
  • Files reviewed: 3/3 changed files
  • Comments generated: 1
  • Review effort level: Balanced

Comment thread crates/trident/src/logging/tracestream.rs
…client)

Auto-merged cleanly -- PR779 does not independently touch any
operation_context/run_command call sites, so no manual conflict
resolution was needed here.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

🟢 Approval recommended

The identifier is consistently removed from implementation, tests, and documentation without leaving stale references.

Review details
  • Files reviewed: 3/3 changed files
  • Comments generated: 0 new
  • Review effort level: Balanced

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

🟡 Changes recommended

The unconditional schema bypass can conceal future telemetry contract regressions.

Once you've addressed the issues Copilot identified, you can request another Copilot review.

Review details
  • Files reviewed: 3/3 changed files
  • Comments generated: 1
  • Review effort level: Balanced

…or-metric' into user/bfjelds/mjolnir/installation-servicing-id
…or-metric' into user/bfjelds/mjolnir/installation-servicing-id

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

🟡 Changes recommended

The shared platform map also removes the UUID from diagnostic reports, exceeding the stated telemetry-only scope.

Once you've addressed the issues Copilot identified, you can request another Copilot review.

Review details
  • Files reviewed: 3/3 changed files
  • Comments generated: 1
  • Review effort level: Balanced

Comment thread crates/trident/src/logging/tracestream.rs
…or-metric' into user/bfjelds/mjolnir/installation-servicing-id

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

🟢 Approval recommended

The implementation consistently removes asset_id, and prior broader-impact concerns were explicitly accepted.

Review details
  • Files reviewed: 3/3 changed files
  • Comments generated: 0 new
  • Review effort level: Balanced

…or-metric' into user/bfjelds/mjolnir/installation-servicing-id

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

🟢 Approval recommended

The implementation consistently removes asset_id, with related tests and documentation updated.

Review details
  • Files reviewed: 3/3 changed files
  • Comments generated: 0 new
  • Review effort level: Balanced

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

🟢 Approval recommended

The implementation consistently removes asset_id across telemetry code, tests, documentation, and ingestion handling.

Review details
  • Files reviewed: 3/3 changed files
  • Comments generated: 0 new
  • Review effort level: Balanced

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

🟢 Approval recommended

The implementation consistently removes asset_id without leaving stale references or broken imports.

Review details
  • Files reviewed: 3/3 changed files
  • Comments generated: 0 new
  • Review effort level: Balanced

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

🟢 Approval recommended

The implementation consistently removes asset_id and updates affected documentation, tests, and ingestion behavior.

Review details
  • Files reviewed: 3/3 changed files
  • Comments generated: 0 new
  • Review effort level: Balanced

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.

2 participants