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

Feature: Diagnostics/Telemetry #16

Merged
merged 59 commits into from
Dec 5, 2023
Merged

Feature: Diagnostics/Telemetry #16

merged 59 commits into from
Dec 5, 2023

Conversation

sgammon
Copy link
Member

@sgammon sgammon commented Dec 5, 2023

Summary

This changeset adds several diagnostics and telemetry features, which will be used to drive UI on the Buildless Cloud, and to surface issues to the end-user, integrated with the Github Action.

Several other features landed on the way:

  • Ability to detect Buildless API key by env (in addition to option)
  • Resolution of identity token for event submission
  • XZ-based archives, which are smaller
  • Error reporting with Sentry
  • Basic install / agent run events

Telemetry Features

The telemetry sent with these calls is extremely minimal, and listed exhaustively below. The only API keys or other credentials that are read and transmitted are (1) the ID token for the Actions workflow, acquired only if permission is granted, and (2) the Buildless API key or auth token, as applicable.

  • Job number
  • Job ID
  • Workflow SHA
  • Workflow Name
  • Target SHA
  • Runner OS, Image, Architecture
  • Buildless Instance ID
  • Action Invocation ID
  • Action Reference

These values should be safe and all have clear use within the error/warning UI within Buildless. At a later time, if requested, we may add an option to remove such telemetry, or add sampling.

Changelog

  • feat: env variable fallbacks
  • feat: resolve id token gracefully
  • feat: xz archive support
  • feat: error reporting via sentry
  • feat: telemetry / diagnostics infra

Signed-off-by: Sam Gammon <sam@elide.ventures>
Signed-off-by: Sam Gammon <sam@elide.ventures>
Signed-off-by: Sam Gammon <sam@elide.ventures>
Signed-off-by: Sam Gammon <sam@elide.ventures>
Signed-off-by: Sam Gammon <sam@elide.ventures>
Signed-off-by: Sam Gammon <sam@elide.ventures>
Signed-off-by: Sam Gammon <sam@elide.ventures>
Signed-off-by: Sam Gammon <sam@elide.ventures>
Signed-off-by: Sam Gammon <sam@elide.ventures>
Signed-off-by: Sam Gammon <sam@elide.ventures>
Signed-off-by: Sam Gammon <sam@elide.ventures>
Signed-off-by: Sam Gammon <sam@elide.ventures>
Signed-off-by: Sam Gammon <sam@elide.ventures>
Signed-off-by: Sam Gammon <sam@elide.ventures>
Signed-off-by: Sam Gammon <sam@elide.ventures>
Signed-off-by: Sam Gammon <sam@elide.ventures>
@sgammon sgammon added the enhancement New feature or request label Dec 5, 2023
@sgammon sgammon self-assigned this Dec 5, 2023
Signed-off-by: Sam Gammon <sam@elide.ventures>
Signed-off-by: Sam Gammon <sam@elide.ventures>
Signed-off-by: Sam Gammon <sam@elide.ventures>
Signed-off-by: Sam Gammon <sam@elide.ventures>
Signed-off-by: Sam Gammon <sam@elide.ventures>
Signed-off-by: Sam Gammon <sam@elide.ventures>
Signed-off-by: Sam Gammon <sam@elide.ventures>
Signed-off-by: Sam Gammon <sam@elide.ventures>
Signed-off-by: Sam Gammon <sam@elide.ventures>
Signed-off-by: Sam Gammon <sam@elide.ventures>
Signed-off-by: Sam Gammon <sam@elide.ventures>
Signed-off-by: Sam Gammon <sam@elide.ventures>
Signed-off-by: Sam Gammon <sam@elide.ventures>
Signed-off-by: Sam Gammon <sam@elide.ventures>
Signed-off-by: Sam Gammon <sam@elide.ventures>
Signed-off-by: Sam Gammon <sam@elide.ventures>
Signed-off-by: Sam Gammon <sam@elide.ventures>
Signed-off-by: Sam Gammon <sam@elide.ventures>
Signed-off-by: Sam Gammon <sam@elide.ventures>
Signed-off-by: Sam Gammon <sam@elide.ventures>
Signed-off-by: Sam Gammon <sam@elide.ventures>
Signed-off-by: Sam Gammon <sam@elide.ventures>
Signed-off-by: Sam Gammon <sam@elide.ventures>
Signed-off-by: Sam Gammon <sam@elide.ventures>
Signed-off-by: Sam Gammon <sam@elide.ventures>
Signed-off-by: Sam Gammon <sam@elide.ventures>
@sgammon sgammon force-pushed the feat/github-env branch 2 times, most recently from b8b5845 to 3f69e07 Compare December 5, 2023 08:32
Signed-off-by: Sam Gammon <sam@elide.ventures>
Signed-off-by: Sam Gammon <sam@elide.ventures>
Signed-off-by: Sam Gammon <sam@elide.ventures>
Signed-off-by: Sam Gammon <sam@elide.ventures>
Signed-off-by: Sam Gammon <sam@elide.ventures>
Signed-off-by: Sam Gammon <sam@elide.ventures>
@sgammon sgammon marked this pull request as ready for review December 5, 2023 12:02
Signed-off-by: Sam Gammon <sam@elide.ventures>
Signed-off-by: Sam Gammon <sam@elide.ventures>
Signed-off-by: Sam Gammon <sam@elide.ventures>
@sgammon sgammon merged commit 5acd482 into main Dec 5, 2023
38 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant