1234567891011121314151617181920212223242526272829303132333435363738394041424344 |
- package dockerfile // import "github.com/docker/docker/builder/dockerfile"
- import (
- metrics "github.com/docker/go-metrics"
- )
- var (
- buildsTriggered metrics.Counter
- buildsFailed metrics.LabeledCounter
- )
- // Build metrics prometheus messages, these values must be initialized before
- // using them. See the example below in the "builds_failed" metric definition.
- const (
- metricsDockerfileSyntaxError = "dockerfile_syntax_error"
- metricsDockerfileEmptyError = "dockerfile_empty_error"
- metricsCommandNotSupportedError = "command_not_supported_error"
- metricsErrorProcessingCommandsError = "error_processing_commands_error"
- metricsBuildTargetNotReachableError = "build_target_not_reachable_error"
- metricsMissingOnbuildArgumentsError = "missing_onbuild_arguments_error"
- metricsUnknownInstructionError = "unknown_instruction_error"
- metricsBuildCanceled = "build_canceled"
- )
- func init() {
- buildMetrics := metrics.NewNamespace("builder", "", nil)
- buildsTriggered = buildMetrics.NewCounter("builds_triggered", "Number of triggered image builds")
- buildsFailed = buildMetrics.NewLabeledCounter("builds_failed", "Number of failed image builds", "reason")
- for _, r := range []string{
- metricsDockerfileSyntaxError,
- metricsDockerfileEmptyError,
- metricsCommandNotSupportedError,
- metricsErrorProcessingCommandsError,
- metricsBuildTargetNotReachableError,
- metricsMissingOnbuildArgumentsError,
- metricsUnknownInstructionError,
- metricsBuildCanceled,
- } {
- buildsFailed.WithValues(r)
- }
- metrics.Register(buildMetrics)
- }
|