Skip to content

processor/otel: set outcome from status code#4127

Merged
axw merged 3 commits intoelastic:masterfrom
axw:jaeger-outcome
Sep 2, 2020
Merged

processor/otel: set outcome from status code#4127
axw merged 3 commits intoelastic:masterfrom
axw:jaeger-outcome

Conversation

@axw
Copy link
Copy Markdown
Member

@axw axw commented Sep 1, 2020

Motivation/summary

For Jaeger HTTP transactions/spans, set outcome to success or failure.
For transactions we set to success for codes < 500, and for spans we set
to success for codes < 400, in line with our own agents.

Checklist

I have considered changes for:
- [ ] documentation
- [ ] logging (add log lines, choose appropriate log selector, etc.)
- [ ] metrics and monitoring (create issue for Kibana team to add metrics to visualizations, e.g. Kibana#44001)

How to test these changes

Instrument a web service that receives and sends HTTP requests with Jaeger. Send spans to APM Server, observe that event.outcome is added to the transactions and spans according to the HTTP status codes.

Related issues

Closes #4117

@ghost
Copy link
Copy Markdown

ghost commented Sep 1, 2020

💚 Build Succeeded

Pipeline View Test View Changes Artifacts preview

Expand to view the summary

Build stats

  • Build Cause: [Pull request #4127 updated]

  • Start Time: 2020-09-01T12:24:52.009+0000

  • Duration: 47 min 38 sec

Test stats 🧪

Test Results
Failed 0
Passed 3015
Skipped 139
Total 3154

Steps errors

Expand to view the steps failures

  • Name: Compress

    • Description: tar --exclude=coverage-files.tgz -czf coverage-files.tgz coverage

    • Duration: 0 min 0 sec

    • Start Time: 2020-09-01T12:41:12.565+0000

    • log

  • Name: Compress

    • Description: tar --exclude=system-tests-linux-files.tgz -czf system-tests-linux-files.tgz system-tests

    • Duration: 0 min 0 sec

    • Start Time: 2020-09-01T12:55:11.394+0000

    • log

  • Name: Test Sync

    • Description: ./script/jenkins/sync.sh

    • Duration: 3 min 49 sec

    • Start Time: 2020-09-01T12:36:35.967+0000

    • log

For HTTP transactions/spans, set outcome to success or failure.
For transactions we set to success for codes < 500, and for spans
we set to success for codes < 400, in line with our own agents.
@axw axw marked this pull request as ready for review September 1, 2020 05:18
@axw axw requested a review from a team September 1, 2020 05:34
@axw axw merged commit f3b1a84 into elastic:master Sep 2, 2020
@axw axw deleted the jaeger-outcome branch September 2, 2020 00:15
axw added a commit to axw/apm-server that referenced this pull request Sep 8, 2020
* processor/otel: set outcome from status code

For HTTP transactions/spans, set outcome to success or failure.
For transactions we set to success for codes < 500, and for spans
we set to success for codes < 400, in line with our own agents.

* Add constants for event.outcome
axw added a commit that referenced this pull request Sep 8, 2020
* processor/otel: set outcome from status code

For HTTP transactions/spans, set outcome to success or failure.
For transactions we set to success for codes < 500, and for spans
we set to success for codes < 400, in line with our own agents.

* Add constants for event.outcome
@simitt simitt self-assigned this Oct 14, 2020
@simitt
Copy link
Copy Markdown
Contributor

simitt commented Oct 15, 2020

successfully tested;
spans:

  • event.outcome: unknown when no http.status_code or result is sent
  • event.outcome: success for http.status_code < 400
  • event.outcome: failure for http.status_code >= 400
    transactions:
  • event.outcome: unknown when no http.status_code or result is sent
  • event.outcome: success for http.status_code < 500
  • event.outcome: success for result:Success
  • event.outcome: failure for result:Error
  • event.outcome: failure for http.status_code >= 500

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Jaeger] set {Span,Transaction}.Outcome using span attributes

3 participants