github.com/cockroachdb/cockroach@v20.2.0-alpha.1+incompatible/pkg/ts/metrics.go (about) 1 // Copyright 2018 The Cockroach Authors. 2 // 3 // Use of this software is governed by the Business Source License 4 // included in the file licenses/BSL.txt. 5 // 6 // As of the Change Date specified in that file, in accordance with 7 // the Business Source License, use of this software will be governed 8 // by the Apache License, Version 2.0, included in the file 9 // licenses/APL.txt. 10 11 package ts 12 13 import "github.com/cockroachdb/cockroach/pkg/util/metric" 14 15 var ( 16 // Storage metrics. 17 metaWriteSamples = metric.Metadata{ 18 Name: "timeseries.write.samples", 19 Help: "Total number of metric samples written to disk", 20 Measurement: "Metric Samples", 21 Unit: metric.Unit_COUNT, 22 } 23 metaWriteBytes = metric.Metadata{ 24 Name: "timeseries.write.bytes", 25 Help: "Total size in bytes of metric samples written to disk", 26 Measurement: "Storage", 27 Unit: metric.Unit_BYTES, 28 } 29 metaWriteErrors = metric.Metadata{ 30 Name: "timeseries.write.errors", 31 Help: "Total errors encountered while attempting to write metrics to disk", 32 Measurement: "Errors", 33 Unit: metric.Unit_COUNT, 34 } 35 ) 36 37 // TimeSeriesMetrics contains metrics relevant to the time series system. 38 type TimeSeriesMetrics struct { 39 WriteSamples *metric.Counter 40 WriteBytes *metric.Counter 41 WriteErrors *metric.Counter 42 } 43 44 // NewTimeSeriesMetrics creates a new instance of TimeSeriesMetrics. 45 func NewTimeSeriesMetrics() *TimeSeriesMetrics { 46 return &TimeSeriesMetrics{ 47 WriteSamples: metric.NewCounter(metaWriteSamples), 48 WriteBytes: metric.NewCounter(metaWriteBytes), 49 WriteErrors: metric.NewCounter(metaWriteErrors), 50 } 51 }