Transformador - com escopo, global

  • Versão de lançamento: Xanadu
  • Atualizado 1 de ago. de 2024
  • 2 min. de leitura
  • A API do transformador manipula dados da série temporal para preparar os dados para avaliação e análise.

    Você pode chamar esta API em scripts de servidor com escopo e globais. Ao usar a classe Transformer, use o identificador de namespace sn_clotho.

    O caso de uso geral é determinar o período a ser avaliado, selecionar os registros da tabela com o campo de métrica, definir o tipo de transformação a ser executada e, em seguida, executar a transformação.
    // create the start and end time
           var start = new GlideDateTime();
    	start.addSeconds(-1 * 60 * 60); 
    	var end = new GlideDateTime();
    	
    	//mb_demo_drone is a table with metric fields. 
    	var drones = new GlideRecord("mb_demo_drone");
    	drones.addQuery("model", "Kingfisher Phantom");
    	drones.query();
    
    	//build a transform that returns a simple average
    	var builder = new sn_clotho.Transformer(drones);
    	builder.metric("mb_demo_mt_rem_battery").avg().label("Original");
    
    	//execute transform and return result for visualization
    	var result = builder.execute(start,end);

    Esta classe faz parte da aplicação MetricBase.

    Transformador - Transformador (GlideRecord sourceRecords)

    Crie um objeto Transformador.

    Tabela 1. Parâmetros
    Nome Tipo Descrição
    registrosDeorigem GlideRecord Contém os registros para os quais as métricas serão avaliadas. Pode ser um registro ou vários.
    //where drones is a GlideRecord created from a table with a metric field
    	var builder = new sn_clotho.Transformer(drones);
    

    Transformador - execute (início de GlideDateTime, fim de GlideDateTime)

    Execute a transformação.

    Use os métodos metric() e groupBy() antes de chamar execute(). O método execute() só pode ser chamado uma vez para cada objeto Transformador.

    As ações executadas como parte da transformação não mudam os dados no banco de dados MetricBase.

    Tabela 2. Parâmetros
    Nome Tipo Descrição
    iniciar GlideDateTime O início do período a ser avaliado.
    terminar GlideDateTime O fim do período a ser avaliado.
    Tabela 3. Retorna
    Tipo Descrição
    Resultado da transformação Os dados transformados.
    var minutesAgoStart = 60;
    	var end = new GlideDateTime();
    	var start = new GlideDateTime(end);
    	start.addSeconds(-1 * 60 * minutesAgoStart);
    	
    	// query subject records
    	var grDrone = new GlideRecord('mb_demo_drone');
    	grDrone.query();
    	
    	// building transform; get the average transforms of a metric, grouping by model
    	var transformer = new sn_clotho.Transformer(grDrone);
    	transformer.groupBy("fleet").metric("mb_demo_mt_altitude").avg().label('avg - %g:fleet:');
    
    	// execute and return result for visualization
    	var tfrmResult = transformer.execute(start, end);

    Transformador - groupBy(String field)

    Especifica o campo a ser usado para agrupar os dados.

    Se você for usar o método groupBy(), deverá chamá-lo antes de chamar o método execute().

    Tabela 4. Parâmetros
    Nome Tipo Descrição
    Assunto: Cadeia de caracteres O campo na tabela a ser usado para agrupar os resultados da transformação.
    Tabela 5. Retorna
    Tipo Descrição
    TransformPart Um objeto TransformPart que você pode usar para especificar as características de transformação.
    var transformer = new sn_clotho.Transformer(grDrone);
    var trnsfrm = transformer.groupBy("fleet");

    Transformador - metric(String metricName)

    Especifique o campo de métrica a ser usado na transformação.

    Você pode especificar várias métricas a serem usadas na transformação. O método metric() não pode ser chamado depois que o método execute() é chamado.

    Tabela 6. Parâmetros
    Nome Tipo Descrição
    metricName Cadeia de caracteres Nome do campo de métrica.
    Tabela 7. Retorna
    Tipo Descrição
    TransformPart Um objeto TransformPart que pode ser usado para especificar as características de transformação.
    var transformer = new sn_clotho.Transformer(grDrone);
    var trnsfrm = transformer.metric("mb_demo_mt_altitude");