Hi,

I have couple of doubts in tickscripts, looking for some help with them.

Below is the script where I want to find the stddev of a field and want to 
compare it to trigger alerts. But no alerts are getting triggered though there 
are no errors.

Want to understand if the conditional statement I have given has to do 
something with it. Please correct me if I am wrong, also let me know what is 
the best possible way to achieve this.
batch
    |query('''
        SELECT Airtemp
        FROM "Station"."autogen"."Temprature"
    ''')
        .period(30m)
        .every(15m)
        .groupBy('Airtemp','Station')
                |stddev('Airtemp')
                        .as('stat')
|alert()
        .id('Standard Deviation of Air Temperature : {{ .TaskName }} Alert Time 
: {{ .Time }}')
                .crit(lambda: "stat" >= 5 AND "stat" <= 4)
        .message('{{ .ID }}')
        .log('/tmp/station_sd.log')
|influxDBOut()
    .database('Station')
    .retentionPolicy('autogen')
    .flushInterval(1s)
    .measurement('stationsd')
========================================================================

This is one another tickscript where .crit(lambda: 'scoreField' >= 'x') 
conditions throws error saying invalid comparison, I want to know if it is 
valid in first place to put in a conditional statement within @Morgoth, if this 
is good then kindly advice me how to correct this particular script to produce 
results.


// The measurement to analyze
var measurement = 'eventflow_IIS'

// The amount of data to window at once
var window = 5m

//Define variable
var x = 0.9

// The field to process
var field = 'eventcount'

// The field to group by
var field1 = 'status'

// The name for the anomaly score field
var scoreField = 'anomalyScore'

// The minimum support
var minSupport = 0.8

// The error tolerance
var errorTolerance = 0.15

// The consensus
var consensus = -1.0

// Number of sigmas allowed for normal window deviation
var sigmas = 5.0

  batch
    |query('''
        SELECT *
        FROM "statistics"."autogen"."eventflow_IIS"
    ''')
        .period(5m)
        .every(5m)
        .groupBy(field,field1)
//    |.where(lambda: TRUE)

  @morgoth()
     .field(field)
     .scoreField(scoreField)
     .minSupport(minSupport)
     .errorTolerance(errorTolerance)
     .consensus(consensus)
     // Configure a single Sigma fingerprinter
     .sigma(sigmas)
  // Morgoth returns any anomalous windows
|alert()
     .details('Count is anomalous')
     .id('kapacitor/{{ .TaskName }}/{{ .Name }}/{{ .Group }}')
     .message('{{ .ID }} is at level {{ .Level }} Errorcount is:{{ index 
.Fields "eventcount" }}')
     .crit(lambda: 'scoreField' >= 'x')
     .log('/tmp/anomaly_e.log')
   |influxDBOut()
    .database('anomaly')
    .retentionPolicy('autogen')
    .flushInterval(1s)
    .measurement('Anomaly_e')

-- 
Remember to include the version number!
--- 
You received this message because you are subscribed to the Google Groups 
"InfluxData" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/influxdb.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/influxdb/85ddd700-9286-44e3-a4ab-01ba774c5966%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to