Interface OpenTelemetryPluginCfgClient

All Superinterfaces:
ConfigurationClient, PluginCfgClient

public interface OpenTelemetryPluginCfgClient extends PluginCfgClient
A client-side interface for reading and modifying OpenTelemetry Plugin settings.

The OpenTelemetry Plugin configures the OpenTelemetry library within PingDS for collecting telemetry data and pushing it to an OTLP endpoint.

  • Method Details

    • definition

      Get the configuration definition associated with this OpenTelemetry Plugin.
      Specified by:
      definition in interface ConfigurationClient
      Specified by:
      definition in interface PluginCfgClient
      Returns:
      Returns the configuration definition associated with this OpenTelemetry Plugin.
    • getJavaClass

      Gets the "java-class" property.

      Specifies the fully-qualified name of the Java class that provides the plug-in implementation.

      Default value: org.opends.server.plugins.OpenTelemetryPlugin

      Specified by:
      getJavaClass in interface PluginCfgClient
      Returns:
      Returns the value of the "java-class" property.
    • setJavaClass

      Sets the "java-class" property.

      Specifies the fully-qualified name of the Java class that provides the plug-in implementation.

      Specified by:
      setJavaClass in interface PluginCfgClient
      Parameters:
      value - The value of the "java-class" property.
      Throws:
      PropertyException - If the new value is invalid.
    • getKeyManagerProvider

      ValueOrExpression<String> getKeyManagerProvider()
      Gets the "key-manager-provider" property.

      Specifies the name of the key manager that should be used with this OpenTelemetry Plugin.

      Default value is undefined

      Returns:
      Returns the value of the "key-manager-provider" property.
    • setKeyManagerProvider

      void setKeyManagerProvider(ValueOrExpression<String> value) throws PropertyException
      Sets the "key-manager-provider" property.

      Specifies the name of the key manager that should be used with this OpenTelemetry Plugin.

      Parameters:
      value - The value of the "key-manager-provider" property.
      Throws:
      PropertyException - If the new value is invalid.
    • getPluginType

      Gets the "plugin-type" property.

      Specifies the set of plug-in types for the plug-in, which specifies the times at which the plug-in is invoked.

      Default value: shutdown

      Specified by:
      getPluginType in interface PluginCfgClient
      Returns:
      Returns the values of the "plugin-type" property.
    • setPluginType

      Sets the "plugin-type" property.

      Specifies the set of plug-in types for the plug-in, which specifies the times at which the plug-in is invoked.

      Specified by:
      setPluginType in interface PluginCfgClient
      Parameters:
      values - The values of the "plugin-type" property.
      Throws:
      PropertyException - If one or more of the new values are invalid.
    • getSslCertNickname

      SortedSet<ValueOrExpression<String>> getSslCertNickname()
      Gets the "ssl-cert-nickname" property.

      Specifies the nicknames (also called the aliases) of the keys or key pairs that the OpenTelemetry Plugin should use when performing SSL communication.

      The property can be used multiple times (referencing different nicknames) when server certificates with different public key algorithms are used in parallel (for example, RSA, DSA, and ECC-based algorithms). When a nickname refers to an asymmetric (public/private) key pair, the nickname for the public key certificate and associated private key entry must match exactly. A single nickname is used to retrieve both the public key and the private key. This is only applicable when the OpenTelemetry Plugin is configured to use SSL.

      Returns:
      Returns the values of the "ssl-cert-nickname" property.
    • setSslCertNickname

      void setSslCertNickname(Collection<ValueOrExpression<String>> values) throws PropertyException
      Sets the "ssl-cert-nickname" property.

      Specifies the nicknames (also called the aliases) of the keys or key pairs that the OpenTelemetry Plugin should use when performing SSL communication.

      The property can be used multiple times (referencing different nicknames) when server certificates with different public key algorithms are used in parallel (for example, RSA, DSA, and ECC-based algorithms). When a nickname refers to an asymmetric (public/private) key pair, the nickname for the public key certificate and associated private key entry must match exactly. A single nickname is used to retrieve both the public key and the private key. This is only applicable when the OpenTelemetry Plugin is configured to use SSL.

      Parameters:
      values - The values of the "ssl-cert-nickname" property.
      Throws:
      PropertyException - If one or more of the new values are invalid.
    • isTracerExporterBatchEnabled

      ValueOrExpression<Boolean> isTracerExporterBatchEnabled()
      Gets the "tracer-exporter-batch-enabled" property.

      Whether spans are exported in batches, or one at a time as they finish.

      Setting this value to "false" is highly discouraged unless you know what you're doing. This should only be used for troubleshooting very specific scenarios. It will cause all spans to be exported directly as they finish, meaning each export request will have a single

      Default value: true

      Returns:
      Returns the value of the "tracer-exporter-batch-enabled" property.
    • setTracerExporterBatchEnabled

      void setTracerExporterBatchEnabled(ValueOrExpression<Boolean> value) throws PropertyException
      Sets the "tracer-exporter-batch-enabled" property.

      Whether spans are exported in batches, or one at a time as they finish.

      Setting this value to "false" is highly discouraged unless you know what you're doing. This should only be used for troubleshooting very specific scenarios. It will cause all spans to be exported directly as they finish, meaning each export request will have a single

      Parameters:
      value - The value of the "tracer-exporter-batch-enabled" property.
      Throws:
      PropertyException - If the new value is invalid.
    • getTracerExporterBatchExporterTimeout

      ValueOrExpression<Duration> getTracerExporterBatchExporterTimeout()
      Gets the "tracer-exporter-batch-exporter-timeout" property.

      The maximum time an export will be allowed to run before being cancelled and spans are dropped.

      Default value: 30 s

      Returns:
      Returns the value of the "tracer-exporter-batch-exporter-timeout" property.
    • setTracerExporterBatchExporterTimeout

      void setTracerExporterBatchExporterTimeout(ValueOrExpression<Duration> value) throws PropertyException
      Sets the "tracer-exporter-batch-exporter-timeout" property.

      The maximum time an export will be allowed to run before being cancelled and spans are dropped.

      Parameters:
      value - The value of the "tracer-exporter-batch-exporter-timeout" property.
      Throws:
      PropertyException - If the new value is invalid.
    • getTracerExporterBatchMaxExportBatchSize

      ValueOrExpression<Integer> getTracerExporterBatchMaxExportBatchSize()
      Gets the "tracer-exporter-batch-max-export-batch-size" property.

      The maximum number of spans that can be sent in a batch for each export.

      Default value: 512

      Returns:
      Returns the value of the "tracer-exporter-batch-max-export-batch-size" property.
    • setTracerExporterBatchMaxExportBatchSize

      void setTracerExporterBatchMaxExportBatchSize(ValueOrExpression<Integer> value) throws PropertyException
      Sets the "tracer-exporter-batch-max-export-batch-size" property.

      The maximum number of spans that can be sent in a batch for each export.

      Parameters:
      value - The value of the "tracer-exporter-batch-max-export-batch-size" property.
      Throws:
      PropertyException - If the new value is invalid.
    • getTracerExporterBatchMaxQueueSize

      ValueOrExpression<Integer> getTracerExporterBatchMaxQueueSize()
      Gets the "tracer-exporter-batch-max-queue-size" property.

      The maximum number of spans that are kept in the queue. Excess spans are dropped.

      Default value: 2048

      Returns:
      Returns the value of the "tracer-exporter-batch-max-queue-size" property.
    • setTracerExporterBatchMaxQueueSize

      void setTracerExporterBatchMaxQueueSize(ValueOrExpression<Integer> value) throws PropertyException
      Sets the "tracer-exporter-batch-max-queue-size" property.

      The maximum number of spans that are kept in the queue. Excess spans are dropped.

      Parameters:
      value - The value of the "tracer-exporter-batch-max-queue-size" property.
      Throws:
      PropertyException - If the new value is invalid.
    • getTracerExporterBatchScheduleDelay

      ValueOrExpression<Duration> getTracerExporterBatchScheduleDelay()
      Gets the "tracer-exporter-batch-schedule-delay" property.

      The interval between two consecutive exports.

      Default value: 5 s

      Returns:
      Returns the value of the "tracer-exporter-batch-schedule-delay" property.
    • setTracerExporterBatchScheduleDelay

      void setTracerExporterBatchScheduleDelay(ValueOrExpression<Duration> value) throws PropertyException
      Sets the "tracer-exporter-batch-schedule-delay" property.

      The interval between two consecutive exports.

      Parameters:
      value - The value of the "tracer-exporter-batch-schedule-delay" property.
      Throws:
      PropertyException - If the new value is invalid.
    • getTracerExporterConnectTimeout

      ValueOrExpression<Duration> getTracerExporterConnectTimeout()
      Gets the "tracer-exporter-connect-timeout" property.

      Maximum time to wait for new connections to be established

      Default value: 10 s

      Returns:
      Returns the value of the "tracer-exporter-connect-timeout" property.
    • setTracerExporterConnectTimeout

      void setTracerExporterConnectTimeout(ValueOrExpression<Duration> value) throws PropertyException
      Sets the "tracer-exporter-connect-timeout" property.

      Maximum time to wait for new connections to be established

      Parameters:
      value - The value of the "tracer-exporter-connect-timeout" property.
      Throws:
      PropertyException - If the new value is invalid.
    • isTracerExporterExportUnsampledSpans

      ValueOrExpression<Boolean> isTracerExporterExportUnsampledSpans()
      Gets the "tracer-exporter-export-unsampled-spans" property.

      Whether unsampled spans should be exported.

      Default value: false

      Returns:
      Returns the value of the "tracer-exporter-export-unsampled-spans" property.
    • setTracerExporterExportUnsampledSpans

      void setTracerExporterExportUnsampledSpans(ValueOrExpression<Boolean> value) throws PropertyException
      Sets the "tracer-exporter-export-unsampled-spans" property.

      Whether unsampled spans should be exported.

      Parameters:
      value - The value of the "tracer-exporter-export-unsampled-spans" property.
      Throws:
      PropertyException - If the new value is invalid.
    • getTracerExporterHeader

      SortedSet<ValueOrExpression<String>> getTracerExporterHeader()
      Gets the "tracer-exporter-header" property.

      Headers that will be added to requests made to the OTLP endpoint.

      Returns:
      Returns the values of the "tracer-exporter-header" property.
    • setTracerExporterHeader

      void setTracerExporterHeader(Collection<ValueOrExpression<String>> values) throws PropertyException
      Sets the "tracer-exporter-header" property.

      Headers that will be added to requests made to the OTLP endpoint.

      Parameters:
      values - The values of the "tracer-exporter-header" property.
      Throws:
      PropertyException - If one or more of the new values are invalid.
    • getTracerExporterOtlpEndpoint

      @MandatoryProperty ValueOrExpression<String> getTracerExporterOtlpEndpoint()
      Gets the "tracer-exporter-otlp-endpoint" property.

      Sets the OTLP/HTTP endpoint where the span exporter sends sampled spans.

      The endpoint must start with either http:// or https://, and include the full HTTP path.

      Default value: http://localhost:4318/v1/traces

      Returns:
      Returns the value of the "tracer-exporter-otlp-endpoint" property.
    • setTracerExporterOtlpEndpoint

      @MandatoryProperty void setTracerExporterOtlpEndpoint(ValueOrExpression<String> value) throws PropertyException
      Sets the "tracer-exporter-otlp-endpoint" property.

      Sets the OTLP/HTTP endpoint where the span exporter sends sampled spans.

      The endpoint must start with either http:// or https://, and include the full HTTP path.

      Parameters:
      value - The value of the "tracer-exporter-otlp-endpoint" property.
      Throws:
      PropertyException - If the new value is invalid.
    • getTracerExporterRetryBackoffMultiplier

      ValueOrExpression<String> getTracerExporterRetryBackoffMultiplier()
      Gets the "tracer-exporter-retry-backoff-multiplier" property.

      The backoff multiplier

      Once the next random backoff interval has been chosen randomly, it is multiplied by this value.

      Default value: 1.5

      Returns:
      Returns the value of the "tracer-exporter-retry-backoff-multiplier" property.
    • setTracerExporterRetryBackoffMultiplier

      void setTracerExporterRetryBackoffMultiplier(ValueOrExpression<String> value) throws PropertyException
      Sets the "tracer-exporter-retry-backoff-multiplier" property.

      The backoff multiplier

      Once the next random backoff interval has been chosen randomly, it is multiplied by this value.

      Parameters:
      value - The value of the "tracer-exporter-retry-backoff-multiplier" property.
      Throws:
      PropertyException - If the new value is invalid.
    • getTracerExporterRetryInitialBackoff

      ValueOrExpression<Duration> getTracerExporterRetryInitialBackoff()
      Gets the "tracer-exporter-retry-initial-backoff" property.

      The initial backoff before retrying exporting spans

      Default value: 1 s

      Returns:
      Returns the value of the "tracer-exporter-retry-initial-backoff" property.
    • setTracerExporterRetryInitialBackoff

      void setTracerExporterRetryInitialBackoff(ValueOrExpression<Duration> value) throws PropertyException
      Sets the "tracer-exporter-retry-initial-backoff" property.

      The initial backoff before retrying exporting spans

      Parameters:
      value - The value of the "tracer-exporter-retry-initial-backoff" property.
      Throws:
      PropertyException - If the new value is invalid.
    • getTracerExporterRetryMaxAttempts

      ValueOrExpression<Integer> getTracerExporterRetryMaxAttempts()
      Gets the "tracer-exporter-retry-max-attempts" property.

      The maximum number of attempts to retry exporting spans, including the original request.

      After the maximum number of unsuccessful attempts is reached, the spans are dropped.

      Default value: 5

      Returns:
      Returns the value of the "tracer-exporter-retry-max-attempts" property.
    • setTracerExporterRetryMaxAttempts

      void setTracerExporterRetryMaxAttempts(ValueOrExpression<Integer> value) throws PropertyException
      Sets the "tracer-exporter-retry-max-attempts" property.

      The maximum number of attempts to retry exporting spans, including the original request.

      After the maximum number of unsuccessful attempts is reached, the spans are dropped.

      Parameters:
      value - The value of the "tracer-exporter-retry-max-attempts" property.
      Throws:
      PropertyException - If the new value is invalid.
    • getTracerExporterRetryMaxBackoff

      ValueOrExpression<Duration> getTracerExporterRetryMaxBackoff()
      Gets the "tracer-exporter-retry-max-backoff" property.

      Set the maximum backoff interval before attempting again to export spans.

      The next random backoff interval is chosen randomly, whose upper bound is the maximum backoff interval.

      Default value: 5 s

      Returns:
      Returns the value of the "tracer-exporter-retry-max-backoff" property.
    • setTracerExporterRetryMaxBackoff

      void setTracerExporterRetryMaxBackoff(ValueOrExpression<Duration> value) throws PropertyException
      Sets the "tracer-exporter-retry-max-backoff" property.

      Set the maximum backoff interval before attempting again to export spans.

      The next random backoff interval is chosen randomly, whose upper bound is the maximum backoff interval.

      Parameters:
      value - The value of the "tracer-exporter-retry-max-backoff" property.
      Throws:
      PropertyException - If the new value is invalid.
    • getTracerExporterTimeout

      ValueOrExpression<Duration> getTracerExporterTimeout()
      Gets the "tracer-exporter-timeout" property.

      Maximum time to wait for the collector to process an exported batch of spans

      Default value: 10 s

      Returns:
      Returns the value of the "tracer-exporter-timeout" property.
    • setTracerExporterTimeout

      void setTracerExporterTimeout(ValueOrExpression<Duration> value) throws PropertyException
      Sets the "tracer-exporter-timeout" property.

      Maximum time to wait for the collector to process an exported batch of spans

      Parameters:
      value - The value of the "tracer-exporter-timeout" property.
      Throws:
      PropertyException - If the new value is invalid.
    • getTracerSampler

      Gets the "tracer-sampler" property.

      The strategy used by the span exporter to sample spans. The sampling strategy is evaluated each time a span is started.

      Default value: always-on

      Returns:
      Returns the value of the "tracer-sampler" property.
    • setTracerSampler

      Sets the "tracer-sampler" property.

      The strategy used by the span exporter to sample spans. The sampling strategy is evaluated each time a span is started.

      Parameters:
      value - The value of the "tracer-sampler" property.
      Throws:
      PropertyException - If the new value is invalid.
    • getTracerSamplerRatio

      ValueOrExpression<Integer> getTracerSamplerRatio()
      Gets the "tracer-sampler-ratio" property.

      The sampling ratio (as a percentage) when the "traceidratio" or "parentbased-traceidratio" samplers are used.

      Default value: 10

      Returns:
      Returns the value of the "tracer-sampler-ratio" property.
    • setTracerSamplerRatio

      void setTracerSamplerRatio(ValueOrExpression<Integer> value) throws PropertyException
      Sets the "tracer-sampler-ratio" property.

      The sampling ratio (as a percentage) when the "traceidratio" or "parentbased-traceidratio" samplers are used.

      Parameters:
      value - The value of the "tracer-sampler-ratio" property.
      Throws:
      PropertyException - If the new value is invalid.
    • getTracerSpanAttributeCountLimit

      ValueOrExpression<Integer> getTracerSpanAttributeCountLimit()
      Gets the "tracer-span-attribute-count-limit" property.

      The maximum number of attributes recorded per span. Excess attributes are dropped.

      Default value: 128

      Returns:
      Returns the value of the "tracer-span-attribute-count-limit" property.
    • setTracerSpanAttributeCountLimit

      void setTracerSpanAttributeCountLimit(ValueOrExpression<Integer> value) throws PropertyException
      Sets the "tracer-span-attribute-count-limit" property.

      The maximum number of attributes recorded per span. Excess attributes are dropped.

      Parameters:
      value - The value of the "tracer-span-attribute-count-limit" property.
      Throws:
      PropertyException - If the new value is invalid.
    • getTracerSpanAttributeCountLimitPerEvent

      ValueOrExpression<Integer> getTracerSpanAttributeCountLimitPerEvent()
      Gets the "tracer-span-attribute-count-limit-per-event" property.

      The maximum number of attributes recorded per event. Excess attributes are dropped.

      Default value: 128

      Returns:
      Returns the value of the "tracer-span-attribute-count-limit-per-event" property.
    • setTracerSpanAttributeCountLimitPerEvent

      void setTracerSpanAttributeCountLimitPerEvent(ValueOrExpression<Integer> value) throws PropertyException
      Sets the "tracer-span-attribute-count-limit-per-event" property.

      The maximum number of attributes recorded per event. Excess attributes are dropped.

      Parameters:
      value - The value of the "tracer-span-attribute-count-limit-per-event" property.
      Throws:
      PropertyException - If the new value is invalid.
    • getTracerSpanAttributeCountLimitPerLink

      ValueOrExpression<Integer> getTracerSpanAttributeCountLimitPerLink()
      Gets the "tracer-span-attribute-count-limit-per-link" property.

      The maximum number of attributes recorded per link. Excess attributes are dropped.

      Default value: 128

      Returns:
      Returns the value of the "tracer-span-attribute-count-limit-per-link" property.
    • setTracerSpanAttributeCountLimitPerLink

      void setTracerSpanAttributeCountLimitPerLink(ValueOrExpression<Integer> value) throws PropertyException
      Sets the "tracer-span-attribute-count-limit-per-link" property.

      The maximum number of attributes recorded per link. Excess attributes are dropped.

      Parameters:
      value - The value of the "tracer-span-attribute-count-limit-per-link" property.
      Throws:
      PropertyException - If the new value is invalid.
    • getTracerSpanEventCountLimit

      ValueOrExpression<Integer> getTracerSpanEventCountLimit()
      Gets the "tracer-span-event-count-limit" property.

      The maximum number of events per span. Excess events are dropped.

      Default value: 128

      Returns:
      Returns the value of the "tracer-span-event-count-limit" property.
    • setTracerSpanEventCountLimit

      void setTracerSpanEventCountLimit(ValueOrExpression<Integer> value) throws PropertyException
      Sets the "tracer-span-event-count-limit" property.

      The maximum number of events per span. Excess events are dropped.

      Parameters:
      value - The value of the "tracer-span-event-count-limit" property.
      Throws:
      PropertyException - If the new value is invalid.
    • getTracerSpanLinkCountLimit

      ValueOrExpression<Integer> getTracerSpanLinkCountLimit()
      Gets the "tracer-span-link-count-limit" property.

      The maximum number of links per span. Excess links are dropped.

      Default value: 128

      Returns:
      Returns the value of the "tracer-span-link-count-limit" property.
    • setTracerSpanLinkCountLimit

      void setTracerSpanLinkCountLimit(ValueOrExpression<Integer> value) throws PropertyException
      Sets the "tracer-span-link-count-limit" property.

      The maximum number of links per span. Excess links are dropped.

      Parameters:
      value - The value of the "tracer-span-link-count-limit" property.
      Throws:
      PropertyException - If the new value is invalid.
    • getTrustManagerProvider

      ValueOrExpression<String> getTrustManagerProvider()
      Gets the "trust-manager-provider" property.

      Specifies the name of the trust manager that should be used when negotiating SSL connections with the remote authorization server.

      Returns:
      Returns the value of the "trust-manager-provider" property.
    • setTrustManagerProvider

      void setTrustManagerProvider(ValueOrExpression<String> value) throws PropertyException
      Sets the "trust-manager-provider" property.

      Specifies the name of the trust manager that should be used when negotiating SSL connections with the remote authorization server.

      Parameters:
      value - The value of the "trust-manager-provider" property.
      Throws:
      PropertyException - If the new value is invalid.