mirror of
https://github.com/hanzoai/otel-collector.git
synced 2026-10-30 18:26:25 +00:00
## Pull Request ### Summary Adds llm cost processor ### Related Issues FIxes https://github.com/SigNoz/engineering-pod/issues/4358 ### Resource Impact **Will this change affect the application's resource usage?** - [x] Yes - [ ] No If **Yes**, describe: - **Resources impacted:** (CPU, Memory, Disk, Network, etc.) - **Expected change:** (e.g., +10% CPU, -150MB RAM) - **Benchmarks:** Provide before/after results and how they were measured.
42 lines
1.1 KiB
Go
42 lines
1.1 KiB
Go
package signozllmpricingprocessor // import "github.com/SigNoz/signoz-otel-collector/processor/signozllmpricingprocessor"
|
|
|
|
import (
|
|
"context"
|
|
|
|
"go.opentelemetry.io/collector/component"
|
|
"go.opentelemetry.io/collector/consumer"
|
|
"go.opentelemetry.io/collector/processor"
|
|
"go.opentelemetry.io/collector/processor/processorhelper"
|
|
)
|
|
|
|
var processorCapabilities = consumer.Capabilities{MutatesData: true}
|
|
|
|
const typeStr = "signozllmpricing"
|
|
|
|
// NewFactory returns the component factory for signozllmpricingprocessor.
|
|
func NewFactory() processor.Factory {
|
|
return processor.NewFactory(
|
|
component.MustNewType(typeStr),
|
|
createDefaultConfig,
|
|
processor.WithTraces(createTracesProcessor, component.StabilityLevelDevelopment),
|
|
)
|
|
}
|
|
|
|
func createDefaultConfig() component.Config {
|
|
return &Config{}
|
|
}
|
|
|
|
func createTracesProcessor(
|
|
ctx context.Context,
|
|
set processor.Settings,
|
|
cfg component.Config,
|
|
nextConsumer consumer.Traces,
|
|
) (processor.Traces, error) {
|
|
proc := newProcessor(cfg.(*Config))
|
|
return processorhelper.NewTraces(
|
|
ctx, set, cfg, nextConsumer,
|
|
proc.ProcessTraces,
|
|
processorhelper.WithCapabilities(processorCapabilities),
|
|
)
|
|
}
|