Documentation
¶
Index ¶
- func NewFactory(options ...FactoryOption) exporter.Factory
- type Athenz
- type Authentication
- type BatchBuilderType
- type CompressionLevel
- type CompressionType
- type Config
- type FactoryOption
- type HashingScheme
- type LogsMarshaler
- type MetricsMarshaler
- type OAuth2
- type Producer
- type PulsarLogsProducer
- type PulsarMetricsProducer
- type PulsarTracesProducer
- type TLS
- type Token
- type TracesMarshaler
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewFactory ¶
func NewFactory(options ...FactoryOption) exporter.Factory
NewFactory creates Pulsar exporter factory.
Types ¶
type Athenz ¶
type Athenz struct {
ProviderDomain string `mapstructure:"provider_domain"`
TenantDomain string `mapstructure:"tenant_domain"`
TenantService string `mapstructure:"tenant_service"`
PrivateKey configopaque.String `mapstructure:"private_key"`
KeyID string `mapstructure:"key_id"`
PrincipalHeader string `mapstructure:"principal_header"`
ZtsURL string `mapstructure:"zts_url"`
}
type Authentication ¶
type Authentication struct {
TLS configoptional.Optional[TLS] `mapstructure:"tls"`
Token configoptional.Optional[Token] `mapstructure:"token"`
Athenz configoptional.Optional[Athenz] `mapstructure:"athenz"`
OAuth2 configoptional.Optional[OAuth2] `mapstructure:"oauth2"`
// contains filtered or unexported fields
}
type BatchBuilderType ¶ added in v0.73.0
type BatchBuilderType string
const ( DefaultBatchBuilder BatchBuilderType = "default" KeyBasedBatchBuilder BatchBuilderType = "key_based" )
func (*BatchBuilderType) ToPulsar ¶ added in v0.73.0
func (c *BatchBuilderType) ToPulsar() pulsar.BatcherBuilderType
func (*BatchBuilderType) UnmarshalText ¶ added in v0.73.0
func (c *BatchBuilderType) UnmarshalText(text []byte) error
type CompressionLevel ¶ added in v0.73.0
type CompressionLevel string
const ( Default CompressionLevel = "default" Faster CompressionLevel = "faster" Better CompressionLevel = "better" )
func (*CompressionLevel) ToPulsar ¶ added in v0.73.0
func (c *CompressionLevel) ToPulsar() pulsar.CompressionLevel
func (*CompressionLevel) UnmarshalText ¶ added in v0.73.0
func (c *CompressionLevel) UnmarshalText(text []byte) error
type CompressionType ¶ added in v0.73.0
type CompressionType string
const ( None CompressionType = "none" LZ4 CompressionType = "lz4" ZLib CompressionType = "zlib" ZStd CompressionType = "zstd" )
func (*CompressionType) ToPulsar ¶ added in v0.73.0
func (c *CompressionType) ToPulsar() pulsar.CompressionType
func (*CompressionType) UnmarshalText ¶ added in v0.73.0
func (c *CompressionType) UnmarshalText(text []byte) error
type Config ¶
type Config struct {
TimeoutSettings exporterhelper.TimeoutConfig `mapstructure:",squash"`
QueueSettings configoptional.Optional[exporterhelper.QueueBatchConfig] `mapstructure:"sending_queue"`
configretry.BackOffConfig `mapstructure:"retry_on_failure"`
// Endpoint of pulsar broker (default "pulsar://localhost:6650")
Endpoint string `mapstructure:"endpoint"`
// The name of the pulsar topic to export to (default otlp_spans for traces, otlp_metrics for metrics)
Topic string `mapstructure:"topic"`
// Encoding of messages (default "otlp_proto")
Encoding string `mapstructure:"encoding"`
// Producer configuration of the Pulsar producer
Producer Producer `mapstructure:"producer"`
// Set the path to the trusted TLS certificate file
TLSTrustCertsFilePath string `mapstructure:"tls_trust_certs_file_path"`
// Configure whether the Pulsar client accept untrusted TLS certificate from broker (default: false)
TLSAllowInsecureConnection bool `mapstructure:"tls_allow_insecure_connection"`
Authentication Authentication `mapstructure:"auth"`
OperationTimeout time.Duration `mapstructure:"operation_timeout"`
ConnectionTimeout time.Duration `mapstructure:"connection_timeout"`
MaxConnectionsPerBroker int `mapstructure:"max_connections_per_broker"`
}
Config defines configuration for Pulsar exporter.
type FactoryOption ¶
type FactoryOption func(factory *pulsarExporterFactory)
FactoryOption applies changes to pulsarExporterFactory.
type HashingScheme ¶ added in v0.73.0
type HashingScheme string
const ( JavaStringHash HashingScheme = "java_string_hash" Murmur3_32Hash HashingScheme = "murmur3_32hash" )
func (*HashingScheme) ToPulsar ¶ added in v0.73.0
func (c *HashingScheme) ToPulsar() pulsar.HashingScheme
func (*HashingScheme) UnmarshalText ¶ added in v0.73.0
func (c *HashingScheme) UnmarshalText(text []byte) error
type LogsMarshaler ¶
type LogsMarshaler interface {
// Marshal serializes logs into sarama's ProducerMessages
Marshal(logs plog.Logs, topic string) ([]*pulsar.ProducerMessage, error)
// Encoding returns encoding name
Encoding() string
}
LogsMarshaler marshals logs into Message array
type MetricsMarshaler ¶
type MetricsMarshaler interface {
// Marshal serializes metrics into sarama's ProducerMessages
Marshal(metrics pmetric.Metrics, topic string) ([]*pulsar.ProducerMessage, error)
// Encoding returns encoding name
Encoding() string
}
MetricsMarshaler marshals metrics into Message array
type Producer ¶ added in v0.73.0
type Producer struct {
MaxReconnectToBroker *uint `mapstructure:"max_reconnect_broker"`
HashingScheme HashingScheme `mapstructure:"hashing_scheme"`
CompressionLevel CompressionLevel `mapstructure:"compression_level"`
CompressionType CompressionType `mapstructure:"compression_type"`
MaxPendingMessages int `mapstructure:"max_pending_messages"`
BatcherBuilderType BatchBuilderType `mapstructure:"batch_builder_type"`
PartitionsAutoDiscoveryInterval time.Duration `mapstructure:"partitions_auto_discovery_interval"`
BatchingMaxPublishDelay time.Duration `mapstructure:"batching_max_publish_delay"`
BatchingMaxMessages uint `mapstructure:"batching_max_messages"`
BatchingMaxSize uint `mapstructure:"batching_max_size"`
DisableBlockIfQueueFull bool `mapstructure:"disable_block_if_queue_full"`
DisableBatching bool `mapstructure:"disable_batching"`
}
Producer defines configuration for producer
type PulsarLogsProducer ¶
type PulsarLogsProducer struct {
// contains filtered or unexported fields
}
type PulsarMetricsProducer ¶
type PulsarMetricsProducer struct {
// contains filtered or unexported fields
}
type PulsarTracesProducer ¶
type PulsarTracesProducer struct {
// contains filtered or unexported fields
}
type Token ¶
type Token struct {
Token configopaque.String `mapstructure:"token"`
// contains filtered or unexported fields
}
type TracesMarshaler ¶
type TracesMarshaler interface {
// Marshal serializes spans into sarama's ProducerMessages
Marshal(traces ptrace.Traces, topic string) ([]*pulsar.ProducerMessage, error)
// Encoding returns encoding name
Encoding() string
}
TracesMarshaler marshals traces into Message array.
Source Files
¶
Click to show internal directories.
Click to hide internal directories.