Interface TracesProvider


  • public interface TracesProvider
    Interface to be implemented to send traces on the chaincode to the 'backend-of-choice'. An instance of this will be created, and provided with the resources from which chaincode specific metrics can be collected. (via the no-argument constructor). The choice of when, where and what to collect etc are within the remit of the provider. This is the effective call sequence. MyTracesProvider mmp = new MyTracesProvider() mmp.initialize(props_from_environment); // short while later.... mmp.setTaskTracesCollector(taskService);
    • Method Summary

      All Methods Instance Methods Default Methods 
      Modifier and Type Method Description
      default io.grpc.ClientInterceptor createInterceptor()
      Creates an interceptor of gRPC messages that can be injected in processing incoming messages to extract trace information.
      default io.opentelemetry.api.trace.Span createSpan​(ChaincodeStub stub)
      Creates a span with metadata of the current chaincode execution, possibly linked to the execution arguments.
      default void initialize​(java.util.Properties props)
      Initialize method that is called immediately after creation.
    • Method Detail

      • initialize

        default void initialize​(java.util.Properties props)
        Initialize method that is called immediately after creation.
        Parameters:
        props -
      • createSpan

        default io.opentelemetry.api.trace.Span createSpan​(ChaincodeStub stub)
        Creates a span with metadata of the current chaincode execution, possibly linked to the execution arguments.
        Parameters:
        stub - the context of the chaincode execution
        Returns:
        a new span if traces are enabled, or null. The caller is responsible for closing explicitly the span.
      • createInterceptor

        default io.grpc.ClientInterceptor createInterceptor()
        Creates an interceptor of gRPC messages that can be injected in processing incoming messages to extract trace information.
        Returns:
        a new client interceptor, or null if no interceptor is set.