Class ParameterArchiveApiClient

java.lang.Object
org.yamcs.protobuf.AbstractParameterArchiveApi<Void>
org.yamcs.protobuf.ParameterArchiveApiClient
All Implemented Interfaces:
Api<Void>

@Generated(value="org.yamcs.protoc.ServiceGenerator", date="2024-03-28T22:16:35.529221902Z") public class ParameterArchiveApiClient extends AbstractParameterArchiveApi<Void>
  • Constructor Details

    • ParameterArchiveApiClient

      public ParameterArchiveApiClient(MethodHandler handler)
  • Method Details

    • rebuildRange

      public final void rebuildRange(Void ctx, RebuildRangeRequest request, Observer<com.google.protobuf.Empty> observer)
        Rebuild range
       
        The back filler has to be enabled for this purpose. The back filling process does not
        remove data but just overwrites it. That means that if the parameter replay returns
        less parameters than originally stored in the archive, the old parameters will still
        be found in the archive.
       
        It also means that if a replay returns the parameter of a different type than
        originally stored, the old ones will still be stored. This is because the parameter
        archive treats parameter with the same name but different type as different parameters.
        Each of them is given an id and the id is stored in the archive.
       
      Specified by:
      rebuildRange in class AbstractParameterArchiveApi<Void>
    • getParameterSamples

      public final void getParameterSamples(Void ctx, Archive.GetParameterSamplesRequest request, Observer<Pvalue.TimeSeries> observer)
        Get parameter samples
       
        This divides the query interval in a number of intervals and returns aggregated
        statistics (max, min, avg) about each interval.
       
        This operation is useful when making high-level overviews (such as plots) of a
        parameter's value over large time intervals without having to retrieve each
        and every individual parameter value.
       
        By default this operation fetches data from the parameter archive and/or
        parameter cache. If these services are not configured, you can still get
        correct results by specifying the option ``source=replay`` as detailed below.
       
      Specified by:
      getParameterSamples in class AbstractParameterArchiveApi<Void>
    • getParameterRanges

      public final void getParameterRanges(Void ctx, GetParameterRangesRequest request, Observer<Pvalue.Ranges> observer)
        Get parameter ranges
       
        A range is a tuple ``(start, stop, value, count)`` that represents the time
        interval for which the parameter has been steadily coming in with the same
        value. This request is useful for retrieving an overview for parameters that
        change unfrequently in a large time interval. For example an on/off status
        of a device, or some operational status. Two consecutive ranges containing
        the same value will be returned if there was a gap in the data. The gap is
        determined according to the parameter expiration time configured in the
        Mission Database.
       
      Specified by:
      getParameterRanges in class AbstractParameterArchiveApi<Void>
    • listParameterHistory

      public final void listParameterHistory(Void ctx, Archive.ListParameterHistoryRequest request, Observer<Archive.ListParameterHistoryResponse> observer)
        List parameter history
       
      Specified by:
      listParameterHistory in class AbstractParameterArchiveApi<Void>
    • getArchivedParametersInfo

      public final void getArchivedParametersInfo(Void ctx, GetArchivedParametersInfoRequest request, Observer<ArchivedParametersInfoResponse> observer)
        Get information about the archived parameters.
       
        Each combination of (parameter name, raw type, engineering type) is assigned a
        unique parameter id.
        
        The parameters are grouped such that the samples of all parameters from one group
        have the same timestamp. For example all parameters extracted from one TM packet
        have usually the same timestamp and are part of the same group.
       
        Each group is assigned a unique group id.
       
        A parameter can be part of multiple groups. For instance a parameter appearing
        in the header of a packet is part of all groups made by inherited containers
        (i.e. each packet with that header will compose another group).
       
        For each group, the parameter archive stores one common record for the timestamps
        and individual records for the raw and engineering values of each parameter. If a
        parameter appears in multiple groups, retrieving its value means combining
        (time-based merge operation). The records beloging to the groups in which the
        parameter appears.
       
        The response to this method contains the parameter id, name, engineering type,
        raw type and the groups of which this parameter is part of.
       
      Specified by:
      getArchivedParametersInfo in class AbstractParameterArchiveApi<Void>
    • getArchivedParameterSegments

      public final void getArchivedParameterSegments(Void ctx, GetArchivedParameterSegmentsRequest request, Observer<ArchivedParameterSegmentsResponse> observer)
        For a given parameter id, get the list of segments available for that parameter.
        A segment contains multiple samples (maximum ~70 minutes) of the same parameter.
       
      Specified by:
      getArchivedParameterSegments in class AbstractParameterArchiveApi<Void>
    • getArchivedParameterGroup

      public final void getArchivedParameterGroup(Void ctx, GetArchivedParameterGroupRequest request, Observer<ArchivedParameterGroupResponse> observer)
       For a given group id, get the list of parameters which are part of the group
       
      Specified by:
      getArchivedParameterGroup in class AbstractParameterArchiveApi<Void>
    • purge

      public final void purge(Void ctx, PurgeRequest request, Observer<com.google.protobuf.Empty> observer)
        Removes all the parameter archive data and related metadata. All the filling operations are stopped before and started after the purge.
        The rebuild operation has to be called to rebuild the past segments of the archive.
        Starting with Yamcs 5.9.0 the parameter archive is stored into a different column family paramter_archive.
        Storing data into a separate column family gives better performance and the parameter archive rebuild operations
        are less disturbing for the other data (TM, TC, Events...). If the archive is from a previous version of Yamcs, the purge/rebuild can be used to move 
        the parameter archive from the default column family to the separate column family.
       
      Specified by:
      purge in class AbstractParameterArchiveApi<Void>