LlmMetricsAutoConfiguration

org.llm4s.spring.LlmMetricsAutoConfiguration
@AutoConfiguration(value = _, before = scala.Array.apply[java.lang.Class[_ >: scala.Nothing <: . ]](scala.Predef.classOf[org.llm4s.spring.Llm4sAutoConfiguration])(scala.reflect.ClassTag.apply[java.lang.Class[_ >: scala.Nothing <: . ]](classOf[java.lang.Class])), beforeName = _, after = _, afterName = scala.Array.apply[java.lang.String]("org.springframework.boot.actuate.autoconfigure.metrics.MetricsAutoConfiguration", "org.springframework.boot.actuate.autoconfigure.metrics.CompositeMeterRegistryAutoConfiguration", "org.springframework.boot.actuate.autoconfigure.metrics.export.simple.SimpleMetricsExportAutoConfiguration")(scala.reflect.ClassTag.apply[java.lang.String](classOf[java.lang.String]))) @Configuration(value = _, proxyBeanMethods = _, enforceUniqueMethods = _) @ConditionalOnClass(value = _, name = scala.Array.apply[java.lang.String]("io.micrometer.core.instrument.MeterRegistry", "org.llm4s.metrics.MicrometerMetrics")(scala.reflect.ClassTag.apply[java.lang.String](classOf[java.lang.String]))) @ConditionalOnBean(value = _, type = scala.Array.apply[java.lang.String]("io.micrometer.core.instrument.MeterRegistry")(scala.reflect.ClassTag.apply[java.lang.String](classOf[java.lang.String])), annotation = _, name = _, search = _, parameterizedContainer = _) @ConditionalOnProperty(value = _, prefix = "llm4s", name = scala.Array.apply[java.lang.String]("enabled")(scala.reflect.ClassTag.apply[java.lang.String](classOf[java.lang.String])), havingValue = "true", matchIfMissing = true)

Records llm4s request, token, cost and error metrics in the application's Micrometer MeterRegistry, so they appear on /actuator/metrics (and in whatever the registry exports to) with no wiring.

Active when llm4s-observability-micrometer is on the classpath and the context has a MeterRegistry bean, as Spring Boot Actuator provides. The starter declares that module provided, like Actuator itself, so an application opts in by adding the dependency. A MetricsCollector bean of the application's own replaces this one; the client bean reports to every MetricsCollector bean there is.

Attributes

Graph
Supertypes
class Object
trait Matchable
class Any

Members list

Value members

Concrete methods

@Bean(value = _, name = _, autowireCandidate = _, initMethod = _, destroyMethod = _) @ConditionalOnMissingBean(value = scala.Array.apply[java.lang.Class[_ >: scala.Nothing <: . ]](scala.Predef.classOf[org.llm4s.metrics.MetricsCollector])(scala.reflect.ClassTag.apply[java.lang.Class[_ >: scala.Nothing <: . ]](classOf[java.lang.Class])), type = _, ignored = _, ignoredType = _, annotation = _, name = _, search = _, parameterizedContainer = _)
def llm4sMetricsCollector(registry: MeterRegistry): MetricsCollector