Documentation ¶
Index ¶
- Constants
- func CreateDefaultHTTPClientSettings() confighttp.HTTPClientSettings
- func DecomposeHistograms(md pmetric.Metrics) pmetric.Metrics
- func NewFactory() exporter.Factory
- type CompressEncodingType
- type Config
- type JSONLogs
- type LogFormatType
- type MetricFormatType
- type PipelineType
- type TraceFormatType
Constants ¶
View Source
const ( // TextFormat represents log_format: text TextFormat LogFormatType = "text" // JSONFormat represents log_format: json JSONFormat LogFormatType = "json" // OTLPLogFormat represents log_format: otlp OTLPLogFormat LogFormatType = "otlp" // RemovedGraphiteFormat represents the no longer supported graphite metric format RemovedGraphiteFormat MetricFormatType = "graphite" // RemovedCarbon2Format represents the no longer supported carbon2 metric format RemovedCarbon2Format MetricFormatType = "carbon2" // PrometheusFormat represents metric_format: prometheus PrometheusFormat MetricFormatType = "prometheus" // OTLPMetricFormat represents metric_format: otlp OTLPMetricFormat MetricFormatType = "otlp" // OTLPTraceFormat represents trace_format: otlp OTLPTraceFormat TraceFormatType = "otlp" // GZIPCompression represents compress_encoding: gzip GZIPCompression CompressEncodingType = "gzip" // DeflateCompression represents compress_encoding: deflate DeflateCompression CompressEncodingType = "deflate" // NoCompression represents disabled compression NoCompression CompressEncodingType = "" // MetricsPipeline represents metrics pipeline MetricsPipeline PipelineType = "metrics" // LogsPipeline represents metrics pipeline LogsPipeline PipelineType = "logs" // TracesPipeline represents traces pipeline TracesPipeline PipelineType = "traces" // DefaultCompress defines default Compress DefaultCompress bool = true // DefaultCompressEncoding defines default CompressEncoding DefaultCompressEncoding CompressEncodingType = "gzip" // DefaultMaxRequestBodySize defines default MaxRequestBodySize in bytes DefaultMaxRequestBodySize int = 1 * 1024 * 1024 // DefaultLogFormat defines default LogFormat DefaultLogFormat LogFormatType = OTLPLogFormat // DefaultMetricFormat defines default MetricFormat DefaultMetricFormat MetricFormatType = OTLPMetricFormat // DefaultClient defines default Client DefaultClient string = "otelcol" // DefaultClearTimestamp defines default ClearLogsTimestamp value DefaultClearLogsTimestamp bool = true // DefaultLogKey defines default LogKey value DefaultLogKey string = "log" // DefaultAddTimestamp defines default AddTimestamp value DefaultAddTimestamp bool = true // DefaultTimestampKey defines default TimestampKey value DefaultTimestampKey string = "timestamp" // DefaultFlattenBody defines default FlattenBody value DefaultFlattenBody bool = false // DefaultDropRoutingAttribute defines default DropRoutingAttribute DefaultDropRoutingAttribute string = "" )
Variables ¶
This section is empty.
Functions ¶
func CreateDefaultHTTPClientSettings ¶
func CreateDefaultHTTPClientSettings() confighttp.HTTPClientSettings
CreateDefaultHTTPClientSettings returns default http client settings
func DecomposeHistograms ¶
DecomposeHistograms decomposes any histograms present in the metric data into individual Sums and Gauges This is a noop if no Histograms are present, but otherwise makes a copy of the whole structure This exists because Sumo doesn't support OTLP histograms yet, and has the same semantics as the conversion to Prometheus format in prometheus_formatter.go
func NewFactory ¶
NewFactory returns a new factory for the sumologic exporter.
Types ¶
type CompressEncodingType ¶
type CompressEncodingType string
CompressEncodingType represents type of the pipeline
func (CompressEncodingType) Validate ¶
func (cet CompressEncodingType) Validate() error
type Config ¶
type Config struct { confighttp.HTTPClientSettings `mapstructure:",squash"` // squash ensures fields are correctly decoded in embedded struct. exporterhelper.QueueSettings `mapstructure:"sending_queue"` exporterhelper.RetrySettings `mapstructure:"retry_on_failure"` // Compression encoding format, either empty string, gzip or deflate (default gzip) // Empty string means no compression CompressEncoding CompressEncodingType `mapstructure:"compress_encoding"` // Max HTTP request body size in bytes before compression (if applied). // By default 1MB is recommended. MaxRequestBodySize int `mapstructure:"max_request_body_size"` // Logs related configuration // Format to post logs into Sumo. (default json) // * text - Logs will appear in Sumo Logic in text format. // * json - Logs will appear in Sumo Logic in json format. // * otlp - Logs will be send in otlp format and will appear in Sumo Logic in text format. LogFormat LogFormatType `mapstructure:"log_format"` // Metrics related configuration // The format of metrics you will be sending, either otlp or prometheus (Default is otlp) MetricFormat MetricFormatType `mapstructure:"metric_format"` // Decompose OTLP Histograms into individual metrics, similar to how they're represented in Prometheus format DecomposeOtlpHistograms bool `mapstructure:"decompose_otlp_histograms"` // Traces related configuration // The format of traces you will be sending, currently only otlp format is supported TraceFormat TraceFormatType `mapstructure:"trace_format"` // Attribute used by routingprocessor which should be dropped during data ingestion // This is workaround for the following issue: // https://github.com/open-telemetry/opentelemetry-collector-contrib/issues/7407 DropRoutingAttribute string `mapstructure:"routing_atttribute_to_drop"` // Sumo specific options // Name of the client Client string `mapstructure:"client"` // ClearTimestamp defines if timestamp for logs should be set to 0. // It indicates that backend will extract timestamp from logs. // This option affects OTLP format only. // By default this is true. ClearLogsTimestamp bool `mapstructure:"clear_logs_timestamp"` JSONLogs `mapstructure:"json_logs"` }
Config defines configuration for Sumo Logic exporter.
type JSONLogs ¶
type JSONLogs struct { // LogKey defines which key will be used to attach the log body at. // This option affects JSON log format only. // By default this is "log". LogKey string `mapstructure:"log_key"` // AddTimestamp defines whether to include a timestamp field when sending // JSON logs, which would contain UNIX epoch timestamp in milliseconds. // This option affects JSON log format only. // By default this is true. AddTimestamp bool `mapstructure:"add_timestamp"` // When add_timestamp is set to true then this key defines what is the name // of the timestamp key. // By default this is "timestamp". TimestampKey string `mapstructure:"timestamp_key"` // When flatten_body is set to true and log is a map, // log's body is going to be flattened and `log_key` won't be used // By default this is false. FlattenBody bool `mapstructure:"flatten_body"` }
Source Files ¶
Click to show internal directories.
Click to hide internal directories.