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

OpenTelemetry plugin missing crucial metrics #3353

Open
peterpakos opened this issue Sep 26, 2024 · 4 comments
Open

OpenTelemetry plugin missing crucial metrics #3353

peterpakos opened this issue Sep 26, 2024 · 4 comments

Comments

@peterpakos
Copy link

peterpakos commented Sep 26, 2024

We are trialling OpenTelemetry plugin for ingesting performance test metrics into our Grafana Cloud instance.

Everything appears to be working as expected but the selection of generated metrics is a bit sparse.

Version info:

2.0.20

Running this command:

artillery run getstatus.yml

I expected to see this happen:

All standard HTTP engine metrics being generated/ingested including http.requests, http.responses, http.codes.* etc. (as per https://www.artillery.io/docs/reference/engines/http#metrics-reported-by-the-engine).

Instead, this happened:

Only the following metrics appear in Grafana:

http_request_rate
http_response_time_count
http_response_time_max
http_response_time_mean
http_response_time_median
http_response_time_min
http_response_time_p50
http_response_time_p75
http_response_time_p90
http_response_time_p95
http_response_time_p99
http_response_time_p999
plugins_metrics_by_endpoint_response_time_GetStatus_count
plugins_metrics_by_endpoint_response_time_GetStatus_max
plugins_metrics_by_endpoint_response_time_GetStatus_mean
plugins_metrics_by_endpoint_response_time_GetStatus_median
plugins_metrics_by_endpoint_response_time_GetStatus_min
plugins_metrics_by_endpoint_response_time_GetStatus_p50
plugins_metrics_by_endpoint_response_time_GetStatus_p75
plugins_metrics_by_endpoint_response_time_GetStatus_p90
plugins_metrics_by_endpoint_response_time_GetStatus_p95
plugins_metrics_by_endpoint_response_time_GetStatus_p99
plugins_metrics_by_endpoint_response_time_GetStatus_p999
target_info
vusers_session_length_count
vusers_session_length_max
vusers_session_length_mean
vusers_session_length_median
vusers_session_length_min
vusers_session_length_p50
vusers_session_length_p75
vusers_session_length_p90
vusers_session_length_p95
vusers_session_length_p99
vusers_session_length_p999

Files being used:

    plugins:
      publish-metrics:
        - type: open-telemetry
          serviceName: GetStatus
          metrics:
            exporter: otlp-proto
            endpoint: https://xxx.grafana.net/otlp/v1/metrics
            headers:
              Authorization: 'Basic xxx'
@maofalt
Copy link

maofalt commented Oct 30, 2024

Did you find any solution ? Having the same problem.

@peterpakos
Copy link
Author

@maofalt unfortunately I haven't.

It's been 6 weeks with no response or at least some sort of acknowledgement.

Shame.

@hassy
Copy link
Member

hassy commented Nov 11, 2024

@maofalt are you using Grafana Cloud too?

@peterpakos it seems that you can see Artillery's histogram and rate metrics in Grafana, but not the counters? Are they being shown in Artillery's own report? The code to send counter metrics is here: https://github.com/artilleryio/artillery/blob/main/packages/artillery-plugin-publish-metrics/lib/open-telemetry/metrics.js#L120 As you can see it's very similar to the code to send other metric types, and all it's doing is use an OTel SDK method. Does the Artillery configuration use includeOnly / exclude config options? https://www.artillery.io/docs/reference/extensions/publish-metrics/opentelemetry#metrics

@peterpakos
Copy link
Author

peterpakos commented Nov 11, 2024

@hassy yes, we can see all relevant metrics on Artillery summary report, they're just not being pushed to Grafana.

We are not using includeOnly or exclude options.

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

No branches or pull requests

3 participants