Class ActivityTags
- Namespace
- Quartz.Diagnostics
- Assembly
- Quartz.dll
The attribute names Quartz puts on its spans and its measurements.
public static class ActivityTags
- Inheritance
-
ActivityTags
- Inherited Members
Remarks
Every one of them is spelled under quartz., which is what OpenTelemetry asks of an attribute a
library defines for itself: job.name is a name any other instrumented library in the same
process could reasonably claim, and once two of them do, a dashboard has one attribute meaning two
things and no way to tell which. The one exception is error.type, which Quartz writes on a
failed operation: it is the semantic convention's shared attribute for that, and a Quartz-specific
spelling would only keep these series from lining up with the rest of an application's failures.
The values are a telemetry contract rather than a compile-time one, so code reading them by these constants needs no change while a dashboard, alert or recording rule matching the 3.x spellings does.
Fields
BatchSize
How many triggers the scheduler asked its store for in one acquisition attempt.
public const string BatchSize = "quartz.jobstore.batch.size"
Field Value
ExecutionGroup
The execution group a trigger belongs to, which is the bucket a thread limit is applied per.
public const string ExecutionGroup = "quartz.execution.group"
Field Value
Remarks
A trigger that names no execution group carries no such attribute at all rather than an empty one: the two are the same series to a reader that treats a missing attribute as empty, and different series to one that does not, and "there is no group" is not a group name.
FireInstanceId
The identity of one firing, which is what an interrupt names.
public const string FireInstanceId = "quartz.fire.instance.id"
Field Value
JobGroup
The job's group.
public const string JobGroup = "quartz.job.group"
Field Value
JobName
The job's name.
public const string JobName = "quartz.job.name"
Field Value
JobStoreOperation
Which store operation a measurement is about — one of the OperationName.JobStore names, which is also what the operation's span is called.
public const string JobStoreOperation = "quartz.jobstore.operation"
Field Value
JobType
The job's type, as the assembly-qualified name the store holds.
public const string JobType = "quartz.job.type"
Field Value
RecoveredInstanceId
The instance id of the cluster node whose work is being recovered, which is a node other than the one reporting the measurement.
public const string RecoveredInstanceId = "quartz.cluster.recovered.instance.id"
Field Value
Remarks
Deliberately not SchedulerId: every measurement carries that already, and it names the node that made the measurement. A recovery is one node saying something about another, so the two ids are two attributes.
SchedulerId
The scheduler's instance id, which is what tells two nodes of a cluster apart.
public const string SchedulerId = "quartz.scheduler.id"
Field Value
SchedulerName
The scheduler's name.
public const string SchedulerName = "quartz.scheduler.name"
Field Value
TriggerCount
How many triggers a store operation was asked for, or handed back.
public const string TriggerCount = "quartz.jobstore.trigger.count"
Field Value
TriggerGroup
The trigger's group.
public const string TriggerGroup = "quartz.trigger.group"
Field Value
TriggerName
The trigger's name.
public const string TriggerName = "quartz.trigger.name"