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

apm-data: Use representative count as event.success_count if available #119995

Merged
merged 12 commits into from
Feb 20, 2025
5 changes: 5 additions & 0 deletions docs/changelog/119995.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
pr: 119995
summary: Add representative count to apm-data plugin
area: Ingest Node
type: enhancement
issues: []
Original file line number Diff line number Diff line change
Expand Up @@ -30,10 +30,10 @@ processors:
field: ["event.duration"]
ignore_failure: true
ignore_missing: true
- set:
if: ctx.event?.outcome == 'success'
field: event.success_count
value: 1
- script:
if: ctx.event?.outcome == 'success' && ctx[ctx.processor?.event]?.representative_count != null
source: |
ctx.event.success_count = ctx[ctx.processor?.event]?.representative_count;
- set:
if: ctx.event?.outcome == 'failure'
field: event.success_count
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -80,7 +80,20 @@ setup:
- '{"@timestamp": "2017-06-22", "event": {"outcome": "unknown"}}'

- create: {}
- '{"@timestamp": "2017-06-22", "event": {"outcome": "success"}}'
- '{
"@timestamp": "2017-06-22",
"processor": {"event": "transaction"},
"event": {"outcome": "success"},
"transaction": {"representative_count": 2}
}'

- create: {}
- '{
"@timestamp": "2017-06-22",
"processor": {"event": "span"},
"event": {"outcome": "success"},
"span": {"representative_count": 3}
}'

- create: {}
- '{"@timestamp": "2017-06-22", "event": {"outcome": "failure"}}'
Expand All @@ -92,8 +105,9 @@ setup:
index: traces-apm-testing
body:
fields: ["event.success_count"]
- length: { hits.hits: 4 }
- length: { hits.hits: 5 }
- match: { hits.hits.0.fields: null }
- match: { hits.hits.1.fields: null }
- match: { hits.hits.2.fields: {"event.success_count": [1]} }
- match: { hits.hits.3.fields: {"event.success_count": [0]} }
- match: { hits.hits.2.fields: {"event.success_count": [2]} }
- match: { hits.hits.3.fields: {"event.success_count": [3]} }
- match: { hits.hits.4.fields: {"event.success_count": [0]} }