Cliente - Escopo, Global

  • Versão de lançamento: Zurich
  • Atualizado 31 de jul. de 2025
  • 4 min. de leitura
  • . Cliente A API fornece métodos para adicionar dados ao MetricBase banco de dados, para executar transformações no MetricBase e para receber os resultados das transformações.

    Você pode usar Cliente em scripts de servidor com escopo e global. Esta classe faz parte de MetricBase e devem ser executados no sn_clotho namespace.

    Client - Client()

    Crie uma instância da classe de cliente para acessar o. MetricBase banco de dados.

    Tabela 1. Parâmetros
    Nome Tipo Descrição
    Nenhum
    var client = new sn_clotho.Client();

    Accumular (GlideRecord now_GR, métrica de cadeia de caracteres)

    Acumula valores de métrica no carimbo de data/hora especificado e salva o resultado no banco de dados em vez de substituir o valor.

    Use este método Para lidar com métricas que podem ser somadas para uma acumulação, como quilowatts-hora (kWhs) de eletricidade. Acumular faz uma chamada para cada métrica no carimbo de data/hora fornecido. Por exemplo, os quilowatts coletados para um aquecedor, chaleira elétrica e máquina de lavar roupa resultariam em três chamadas para acumular.

    Tabela 2. Parâmetros
    Nome Tipo Descrição
    Now_GR GlideRecord Nome da série GlideRecord da qual obter o valor acumulado.

    Consulte também: GetSeries()

    default_value Número Opcional. Valor padrão para acúmulo em um determinado carimbo de data/hora. Usado somente durante a primeira chamada para acumular se um valor não estiver disponível para um determinado carimbo de data/hora.

    Um caso de uso pode estar acumulando uma métrica de watts para um total_power. Você deseja acumular watts para um roteador conetado a uma tomada sem um medidor de energia para medi-lo. Se você souber o valor de consumo e ele for constante), poderá usar o valor da constante como valor padrão para acumular total_power. Por exemplo, você usaria 20 se o roteador estiver conectado constantemente e consumir 20 Watts.

    O valor do carimbo de data/hora pode ser fornecido usando Construtor de dados API.

    Padrão: 0

    Tabela 3. Retornos
    Tipo Descrição
    Nenhum(a)

    O exemplo a seguir mostra como acumular o. total_power valor da métrica em um registro chamado building_a. .

    var time = new GlideDateTime();
    
    // total_power is the name of a metric within building_a which stores accumulated values
    
    var dataBuilder1 = new sn_clotho.DataBuilder(building_a, "total_power");
    // values to be accumulated
    dataBuilder1.add(time, 3.5);
    new sn_clotho.Client().accumulate(dataBuilder1, 0);
    
    var dataBuilder2 = new sn_clotho.DataBuilder(building_a, "total_power");
    // values to be accumulated
    dataBuilder2.add(time, 12);
    new sn_clotho.Client().accumulate(dataBuilder2, 0);
    
    var dataBuilder3 = new sn_clotho.DataBuilder(building_a, "total_power");
    // values to be accumulated
    dataBuilder3.add(time, 4.3);
    new sn_clotho.Client().accumulate(dataBuilder3, 0);
    
    // As a result, client saves value of 3.5+12+4.3+0(default value) at the timestamp 'time'

    Cliente - deleteMetric(cadeia de caracteres tablename, cadeia de caracteres metricName)

    Remova uma métrica especificada de uma tabela especificada no MetricBase banco de dados

    Nota:
    Este método exclui dados do MetricBase banco de dados. Não há mecanismo de recuperação.
    Tabela 4. Parâmetros
    Nome Tipo Descrição
    tableName Cadeia de caracteres O nome da tabela cuja métrica especificada será excluída.
    metricName Cadeia de caracteres O nome da métrica.
    Tabela 5. Retornos
    Tipo Descrição
    Nenhum(a)

    O exemplo a seguir mostra como remover uma métrica de uma tabela.

    var client = new sn_clotho.Client();
    
    // delete metric (Speed) from the Drones table
    client.deleteMetric("mb_demo_drone", "mb_demo_mt_speed");

    Cliente - deleteSeries(GlideRecord now_GR, métrica de cadeia de caracteres)

    Remova os dados em MetricBase Banco de dados associado à métrica especificada no GlideRecord especificado. Use este método para remover dados de teste.

    Nota:
    Este método exclui dados do MetricBase banco de dados. Não há mecanismo de recuperação.
    Tabela 6. Parâmetros
    Nome Tipo Descrição
    Now_GR GlideRecord Os registros cujos dados da série temporal da métrica especificada serão excluídos.
    métrica Cadeia de caracteres O nome da métrica.
    Tabela 7. Retornos
    Tipo Descrição
    vazio
    var client = new sn_clotho.Client();
    //query drones of a specific model
    var drones = new GlideRecord("mb_demo_drone");
    drones.addQuery("model", "Kingfisher Phantom");
    drones.query();
    
    client.deleteSeries(drones, 'mb_demo_mt_speed');

    Cliente - getSeries(GlideRecord now_GR, cadeia de caracteres metricName, GlideDateTime lastUpdateBefore)

    Obter todas as séries de uma dimensão específica.

    Tabela 8. Parâmetros
    Nome Tipo Descrição
    Now_GR GlideRecord O registro do qual a série será obtida.
    métrica Cadeia de caracteres O nome da métrica.
    LastUpdateBefore GlideDateTime Opcional. Data no futuro que representa o fim do período a ser avaliado.
    Tabela 9. Retornos
    Tipo Descrição
    Matriz Cadeia de caracteres sys_ids que representam a série que contém dados da métrica especificada. . lastUpdateBeforeO parâmetro é fornecido, retorna séries que não têm dados mais recentes do que a data lastUpdateBefore (não inclusiva).

    O exemplo a seguir mostra como obter a lista completa de valores de velocidade listados na tabela Drones [mb_demo_drone].

    var client = new sn_clotho.Client();
    
    // query subject records
    var grDrone = new GlideRecord('mb_demo_drone');
    grDrone.query();
    
    var series = client.getSeries(grDrone,'mb_demo_mt_speed');

    PUT(Object metricData)

    Salva dados de métrica no MetricBase banco de dados.

    Tabela 10. Parâmetros
    Nome Tipo Descrição
    MetricData Objeto Um dos seguintes:
    • Construtor de dados objeto que contém dados de métrica.
    • Matriz de objetos do DataBuilder que contém dados de métrica.
    Tabela 11. Retornos
    Tipo Descrição
    vazio
    var time = new GlideDateTime();
    ​
    // two different GlideRecord instances and metrics
    var dataBuilder = new sn_clotho.DataBuilder(now_GR, 'cpu_percentage');
    dataBuilder.add(time, 0.6);
    ​
    var dataBuilder2 = new sn_clotho.DataBuilder(gr2, 'disk_free_percentage');
    dataBuilder2.add(time, 0.2);
    ​
    new sn_clotho.Client().put([dataBuilder,dataBuilder2]);