-
Notifications
You must be signed in to change notification settings - Fork 88
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
Evolve observability documentation #797
Conversation
README.md
Outdated
The SDK emits various metrics by default: see https://docs.temporal.io/references/sdk-metrics. By default, these are | ||
emitted with attributes `namespace`, `task_queue`, `workflow_type` / `activity_type`, and | ||
`service_name=temporal-core-sdk`. To emit additional attributes with all metrics, pass |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is not accurate. We emit lots of client side metrics, worker metrics, etc that don't have some (or all) of these attributes.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks, deleted
README.md
Outdated
The attributes emitted by these default to `namespace`, `task_queue`, and `workflow_type`/`activity_type`; use | ||
`with_additional_attributes` to create a meter emitting additional attributes. | ||
|
||
#### Tracing |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can we call this "OpenTelemetry Tracing" both for discoverability and so users don't get confused and think we have general purpose or multi-vendor tracing (like some SDKs do)?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done
- [OpenTelemetry Support](#opentelemetry-support) | ||
- [Observability](#observability) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
May need to run npx doctoc README.md
, unsure
For emitting custom metrics, the SDK makes a metric meter available: | ||
- In Workflow code, use https://python.temporal.io/temporalio.workflow.html#metric_meter | ||
- In Activity code, use https://python.temporal.io/temporalio.activity.html#metric_meter | ||
- In normal application code, use https://python.temporal.io/temporalio.runtime.Runtime.html#metric_meter |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
a bit confused, where does normal application code exist if not in a workflow or activity?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Where they use the client in non-activity situations, e.g. a client interceptor or anywhere they use the client (but really they probably should use their favorite metrics client/system instead of using Temporal's, but meh)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The way I describe it to people is that a codebase using Temporal has 3 distinct categories of code that involve Temporal: workflow code, activity code, and "normal application code" that is using a Temporal client to start and interact with workflows, issue other queries, create schedules etc.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks both, helpful :)
434074d
to
5ef02ea
Compare
WISOTT