Interface ITracepointConfig

  • All Known Implementing Classes:
    TracepointConfigService

    public interface ITracepointConfig
    This is the interface to the config services. The implementation of this service should act as the manager between incoming tracepoint configs and instrumentation. To help reduce the time spent in the instrumentor.
    • Method Detail

      • noChange

        void noChange​(long tsNano)
        Called when there is no change to the config so just update last seen.
        Parameters:
        tsNano - the time of the config update
      • configUpdate

        void configUpdate​(long tsNano,
                          String hash,
                          Collection<TracePointConfig> tracepoints)
        This indicates that the config from the servers has changed, and we should inform the instrumentation services.
        Parameters:
        tsNano - the time of the update
        hash - the new config hash
        tracepoints - the new config
      • currentHash

        String currentHash()
        Get the hash of the config last used to update the config. This hash should be sent with the calls for new configs, so the server knows what the clients config is and can detect changes.
        Returns:
        the current hash.
      • loadTracepointConfigs

        Collection<TracePointConfig> loadTracepointConfigs​(Collection<String> tracepointId)
        Load the full configs for the given tracepoints ids.
        Parameters:
        tracepointId - the tracepoint ids
        Returns:
        a collection of all the matched tracepoints