Skip to content

Instrument Flux usage in clusters with agentk installed

Everyone can contribute. Help move this issue forward while earning points, leveling up and collecting rewards.

⚠️ If GDK is accessible, an alternative to using this guide is to directly establish event/metric definitions using our internal events generator

Objective

Feature adoption and engagement:

  • Where do Flux deployments deploy from? Git(GitLab or other) | OCI(GitLab container registry or other) | Helm(GitLab Helm registry or other) | Bucket - 2+2+2+1 option
  • How many agent-clusters have Flux running? (can we deduplicate the cluster if it runs multiple agents?)
  • When the source controller was Git|OCI|Helm, how many unique projects/namespaces deploy with Flux?

Events and Metrics

Definition of events and metrics | Sample metrics | Sample events

Details of events to be tracked:

Event Description Event Name Additional Properties Feature
Flux source reconciled flux_source_reconciled flux source is one of: GitLab Git, Git, Gitlab container registry, OCI, GitLab Helm registry, Helm, Bucket; agent-id; project-id for GitLab Git, GitLab container registry and GitLab Helm registry GitOps deployment management

Details of metrics to be tracked:

Metric Description Event / DB column to base the Metric on Total or Unique Count of a Property Time Frame Feature
Number of deployments with Flux by source flux_source_reconciled Unique count of source type 28d GitOps deployment management
Agents/Clusters reporting deployments with Flux flux_source_reconciled Count of unique agent id 28d GitOps deployment management
Number of projects deploying with Flux flux_source_reconciled Unique count of project ids 28d GitOps deployment management

Expand to view examples and guidelines for filling the table

Events:

  • Description: Include what the event is supposed to track, where and when.
  • Name: Primary identifier of the event, format: <action>_<target_of_action>_<where/when>
    • Example event name: click_save_button_in_issue_description_within_15s_of_page_load (action = click ; target = save button; where = in issue description ; when = within 15s
  • **Additional properties: Besides user/project/namespace, what other details should be tracked, if any? ex) status, type, object id, etc.
  • Feature: What feature is being instrumented? Please use the feature title that is used in features.yml if thats already available.

Metrics:

  • Description: What quantitative measurements derived from either event data or database columns would you like to track? eg: Weekly count of unique users who update an issue
  • Event/DB column: What event or database column should the metric count or be based on.
  • Total or unique count: Should the metric count all occurrences or only unique counts, e.g. of user_id to get a count of unique users triggering an event.
  • Time Frame: What time frames should be tracked. Default and recommended is 7d and 28d.

Next steps

Important links

Quick start guide to internal events

Analytics Instrumentation slack channel for questions

✍️ Try our internal events generator. Creating event and metric definition files has never been easier.

Edited by 🤖 GitLab Bot 🤖