Skip to content

Feature: Include Group and Action names in Otel traces #154

@rubberduck203

Description

@rubberduck203

Currently, it's impossible to tell which group or action is taking the most time.
This screen shot was generated by running the Otel containers and then executing the examples.

cd  .devcontainer
docker compose up -d
cd ..
cargo build
cd examples
../target/debug/scope doctor --otel-collector http://localhost:4317

image

Ideally, we would get output similar to the console progress

../target/debug/scope doctor --otel-collector http://localhost:4317 --progress plain run
 INFO Check was successful, group: "noop-1", name: "sleep 1"
 INFO Check was successful, group: "noop-1", name: "sleep 2"
 INFO Check was successful, group: "noop-2", name: "sleep 10"
 INFO Check was successful, group: "noop-2", name: "sleep 5"
...

Something like this

scope:group noop-1
scope:action sleep 1
scope:action sleep 2
scope:group noop-2
...

We would pull this from the ScopeDoctorGroup configs.

apiVersion: scope.github.com/v1alpha
kind: ScopeDoctorGroup
metadata:
  name: noop-1
  description: Sleep Test to validate UI
spec:
  actions:
    - name: sleep 1
      check:
        commands:
          - sleep 1
    - name: sleep 2
      check:
        commands:
          - sleep 2

This would let us see which groups/actions are potential targets for optimization.

The naming scheme of group {name} and action {name} is inspired by the Otel HTTP Span Name Specification

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions