// Code generated by util/telemetry/builder. DO NOT EDIT.
package telemetry

var InstrumentCronworkflowsConcurrencypolicyTriggered = BuiltinInstrument{
	name:        "cronworkflows_concurrencypolicy_triggered",
	description: "A counter of the number of times a CronWorkflow has triggered its `concurrencyPolicy` to limit the number of workflows running",
	unit:        "{cronworkflow}",
	instType:    Int64Counter,
	attributes: []BuiltinAttribute{
		{
			name: AttribCronWFName,
		},
		{
			name: AttribCronWFNamespace,
		},
		{
			name: AttribConcurrencyPolicy,
		},
	},
}

var InstrumentCronworkflowsTriggeredTotal = BuiltinInstrument{
	name:        "cronworkflows_triggered_total",
	description: "A counter of the total number of times a CronWorkflow has been triggered",
	unit:        "{cronworkflow}",
	instType:    Int64Counter,
	attributes: []BuiltinAttribute{
		{
			name: AttribCronWFName,
		},
		{
			name: AttribCronWFNamespace,
		},
	},
}

var InstrumentDeprecatedFeature = BuiltinInstrument{
	name:        "deprecated_feature",
	description: "Incidents of deprecated feature being used",
	unit:        "{feature}",
	instType:    Int64Counter,
	attributes: []BuiltinAttribute{
		{
			name: AttribDeprecatedFeature,
		},
		{
			name:     AttribWorkflowNamespace,
			optional: true,
		},
	},
}

var InstrumentErrorCount = BuiltinInstrument{
	name:        "error_count",
	description: "A counter of certain errors incurred by the controller by cause",
	unit:        "{error}",
	instType:    Int64Counter,
	attributes: []BuiltinAttribute{
		{
			name: AttribErrorCause,
		},
	},
}

var InstrumentGauge = BuiltinInstrument{
	name:        "gauge",
	description: "A gauge of the number of workflows currently in the cluster in each phase",
	unit:        "{workflow}",
	instType:    Int64ObservableGauge,
	attributes: []BuiltinAttribute{
		{
			name: AttribWorkflowPhase,
		},
	},
}

var InstrumentIsLeader = BuiltinInstrument{
	name:        "is_leader",
	description: "Emits 1 if leader, 0 otherwise. Always 1 if leader election is disabled",
	unit:        "{leader}",
	instType:    Int64ObservableGauge,
}

var InstrumentK8sRequestDuration = BuiltinInstrument{
	name:        "k8s_request_duration",
	description: "A histogram recording the API requests sent to the Kubernetes API",
	unit:        "s",
	instType:    Float64Histogram,
	attributes: []BuiltinAttribute{
		{
			name: AttribRequestKind,
		},
		{
			name: AttribRequestVerb,
		},
		{
			name: AttribRequestCode,
		},
	},
	defaultBuckets: []float64{
		0.100000,
		0.200000,
		0.500000,
		1.000000,
		2.000000,
		5.000000,
		10.000000,
		20.000000,
		60.000000,
		180.000000,
	},
}

var InstrumentK8sRequestTotal = BuiltinInstrument{
	name:        "k8s_request_total",
	description: "A counter of the number of API requests sent to the Kubernetes API",
	unit:        "{request}",
	instType:    Int64Counter,
	attributes: []BuiltinAttribute{
		{
			name: AttribRequestKind,
		},
		{
			name: AttribRequestVerb,
		},
		{
			name: AttribRequestCode,
		},
	},
}

var InstrumentLogMessages = BuiltinInstrument{
	name:        "log_messages",
	description: "A count of log messages emitted by the controller by log level: `error`, `warn` and `info`",
	unit:        "{message}",
	instType:    Int64Counter,
	attributes: []BuiltinAttribute{
		{
			name: AttribLogLevel,
		},
	},
}

var InstrumentOperationDurationSeconds = BuiltinInstrument{
	name:        "operation_duration_seconds",
	description: "A histogram of durations of operations",
	unit:        "s",
	instType:    Float64Histogram,
}

var InstrumentPodMissing = BuiltinInstrument{
	name:        "pod_missing",
	description: "Incidents of pod missing",
	unit:        "{pod}",
	instType:    Int64Counter,
	attributes: []BuiltinAttribute{
		{
			name: AttribNodePhase,
		},
		{
			name: AttribRecentlyStarted,
		},
	},
}

var InstrumentPodPendingCount = BuiltinInstrument{
	name:        "pod_pending_count",
	description: "Total number of pods that started pending by reason",
	unit:        "{pod}",
	instType:    Int64Counter,
	attributes: []BuiltinAttribute{
		{
			name: AttribPodPendingReason,
		},
		{
			name: AttribPodNamespace,
		},
	},
}

var InstrumentPodRestartsTotal = BuiltinInstrument{
	name:        "pod_restarts_total",
	description: "Total number of pods automatically restarted due to infrastructure failures before the main container started",
	unit:        "{pod}",
	instType:    Int64Counter,
	attributes: []BuiltinAttribute{
		{
			name: AttribPodRestartReason,
		},
		{
			name:     AttribPodRestartCondition,
			optional: true,
		},
		{
			name: AttribPodNamespace,
		},
	},
}

var InstrumentPodsGauge = BuiltinInstrument{
	name:        "pods_gauge",
	description: "A gauge of the number of workflow created pods currently in the cluster in each phase",
	unit:        "{pod}",
	instType:    Int64ObservableGauge,
	attributes: []BuiltinAttribute{
		{
			name: AttribPodPhase,
		},
	},
}

var InstrumentPodsTotalCount = BuiltinInstrument{
	name:        "pods_total_count",
	description: "Total number of pods that have entered each phase",
	unit:        "{pod}",
	instType:    Int64Counter,
	attributes: []BuiltinAttribute{
		{
			name: AttribPodPhase,
		},
		{
			name: AttribPodNamespace,
		},
	},
}

var InstrumentQueueAddsCount = BuiltinInstrument{
	name:        "queue_adds_count",
	description: "A counter of additions to the work queues inside the controller",
	unit:        "{item}",
	instType:    Int64Counter,
	attributes: []BuiltinAttribute{
		{
			name: AttribQueueName,
		},
	},
}

var InstrumentQueueDepthGauge = BuiltinInstrument{
	name:        "queue_depth_gauge",
	description: "A gauge of the current depth of the queues",
	unit:        "{item}",
	instType:    Int64UpDownCounter,
	attributes: []BuiltinAttribute{
		{
			name: AttribQueueName,
		},
	},
}

var InstrumentQueueDuration = BuiltinInstrument{
	name:        "queue_duration",
	description: "A histogram of the time events in the queues are taking to be processed",
	unit:        "s",
	instType:    Float64Histogram,
	attributes: []BuiltinAttribute{
		{
			name: AttribQueueName,
		},
	},
	defaultBuckets: []float64{
		0.100000,
		0.200000,
		0.500000,
		1.000000,
		2.000000,
		5.000000,
		10.000000,
		20.000000,
		60.000000,
		180.000000,
	},
}

var InstrumentQueueLatency = BuiltinInstrument{
	name:        "queue_latency",
	description: "A histogram of the time events in the queues are taking before they are processed",
	unit:        "s",
	instType:    Float64Histogram,
	attributes: []BuiltinAttribute{
		{
			name: AttribQueueName,
		},
	},
	defaultBuckets: []float64{
		1.000000,
		5.000000,
		20.000000,
		60.000000,
		180.000000,
	},
}

var InstrumentQueueLongestRunning = BuiltinInstrument{
	name:        "queue_longest_running",
	description: "A gauge of the number of seconds that this queue's longest running processor has been running for",
	unit:        "s",
	instType:    Float64ObservableGauge,
	attributes: []BuiltinAttribute{
		{
			name: AttribQueueName,
		},
	},
}

var InstrumentQueueRetries = BuiltinInstrument{
	name:        "queue_retries",
	description: "A counter of the number of times a message has been retried in the queue",
	unit:        "{item}",
	instType:    Int64Counter,
	attributes: []BuiltinAttribute{
		{
			name: AttribQueueName,
		},
	},
}

var InstrumentQueueUnfinishedWork = BuiltinInstrument{
	name:        "queue_unfinished_work",
	description: "A gauge of the number of queue items that have not been processed yet",
	unit:        "{item}",
	instType:    Float64ObservableGauge,
	attributes: []BuiltinAttribute{
		{
			name: AttribQueueName,
		},
	},
}

var InstrumentTotalCount = BuiltinInstrument{
	name:        "total_count",
	description: "A counter of workflows that have entered each phase for tracking them through their life-cycle, by namespace",
	unit:        "{workflow}",
	instType:    Int64Counter,
	attributes: []BuiltinAttribute{
		{
			name: AttribWorkflowPhase,
		},
		{
			name: AttribWorkflowNamespace,
		},
	},
}

var InstrumentVersion = BuiltinInstrument{
	name:        "version",
	description: "Build metadata for this Controller",
	unit:        "{unused}",
	instType:    Int64Counter,
	attributes: []BuiltinAttribute{
		{
			name: AttribBuildVersion,
		},
		{
			name: AttribBuildPlatform,
		},
		{
			name: AttribBuildGoVersion,
		},
		{
			name: AttribBuildDate,
		},
		{
			name: AttribBuildCompiler,
		},
		{
			name: AttribBuildGitCommit,
		},
		{
			name: AttribBuildGitTreeState,
		},
		{
			name: AttribBuildGitTag,
		},
	},
}

var InstrumentWorkersBusyCount = BuiltinInstrument{
	name:        "workers_busy_count",
	description: "A gauge of queue workers that are busy",
	unit:        "{worker}",
	instType:    Int64UpDownCounter,
	attributes: []BuiltinAttribute{
		{
			name: AttribWorkerType,
		},
	},
}

var InstrumentWorkflowCondition = BuiltinInstrument{
	name:        "workflow_condition",
	description: "A gauge of the number of workflows with different conditions",
	unit:        "{workflow}",
	instType:    Int64ObservableGauge,
	attributes: []BuiltinAttribute{
		{
			name: AttribWorkflowType,
		},
		{
			name: AttribWorkflowStatus,
		},
	},
}

var InstrumentWorkflowtemplateRuntime = BuiltinInstrument{
	name:        "workflowtemplate_runtime",
	description: "A histogram of the runtime of workflows using `workflowTemplateRef` only",
	unit:        "s",
	instType:    Float64Histogram,
	attributes: []BuiltinAttribute{
		{
			name: AttribTemplateName,
		},
		{
			name: AttribTemplateNamespace,
		},
		{
			name: AttribTemplateCluster,
		},
	},
}

var InstrumentWorkflowtemplateTriggeredTotal = BuiltinInstrument{
	name:        "workflowtemplate_triggered_total",
	description: "A counter of workflows using `workflowTemplateRef` only, as they enter each phase",
	unit:        "{workflow_template}",
	instType:    Int64Counter,
	attributes: []BuiltinAttribute{
		{
			name: AttribTemplateName,
		},
		{
			name: AttribTemplateNamespace,
		},
		{
			name: AttribTemplateCluster,
		},
		{
			name: AttribWorkflowPhase,
		},
	},
}
