Bosun Avviso di esempio


Esempio

Gli avvisi Bosun sono definiti nel file di configurazione utilizzando un DSL personalizzato . Usano le funzioni per valutare i dati delle serie temporali e generano avvisi quando le espressioni di avvertenza o crit sono diverse da zero. Gli avvisi utilizzano i modelli per includere ulteriori informazioni nelle notifiche, che di solito sono un messaggio e-mail e / o una richiesta POST HTTP.

template sample.alert {
    body = `<p>Alert: {{.Alert.Name}} triggered on {{.Group.host}}
    <hr>
    <p><strong>Computation</strong>
    <table>
        {{range .Computations}}
            <tr><td><a href="{{$.Expr .Text}}">{{.Text}}</a></td><td>{{.Value}}</td></tr>
        {{end}}
    </table>
    <hr>
    {{ .Graph .Alert.Vars.metric }}`

    subject = {{.Last.Status}}: {{.Alert.Name}} cpu idle at {{.Alert.Vars.q | .E}}% on {{.Group.host}}
}

notification sample.notification {
    email = alerts@example.com
}

alert sample.alert {
    template = sample.template
    $q = avg(q("sum:rate:linux.cpu{host=*,type=idle}", "1m"))
    crit = $q < 40
    notification = sample.notification
}

L'avviso invierà un'e-mail con l'oggetto Critical: sample.alert cpu idle at 25% on hostname per qualsiasi host il cui utilizzo della CPU inattivo abbia una media inferiore al 40% nell'ultimo 1 minuto. Questo esempio è un avviso "host scope", ma Bosun supporta anche gli avvisi cluster, datacenter o globali (vedere la serie di video sui fondamenti per maggiori dettagli).