J'ai un code riemann pour déclencher un e-mail lorsque les deux conditions ont été remplies. J'ai donc écrit un code ci-dessous.Comment utiliser l'opération ET dans Riemann
(let [email (mailer {....email configuration})]
(streams
(where (service "log")
(smap
(fn [events]
(let [count-of-failures (count (filter #(= "failed" (:Status %)) events) and (filter #(= "UK" (:Country %)) events))] ;Calculate the count for matched value
(event
{
:status "Failure"
:metric count-of-failures
:total-fail (>= count-of-failures 2)})))
(where (and (= (:status event) "Failure")
(:total-fail event))
(email "[email protected]")
)prn))))
Je reçois ci-dessous erreur une fois que je commencé à exécuter clojure.lang.ArityException: Wrong number of args (3) passed to:
Quelqu'un peut-il s'il vous plaît me suggérer une bonne façon d'utiliser et le fonctionnement ici.
Merci à l'avance
'(laisser [décompte des-échecs (compte (filtre # (= "échoué"(: Etat%)) événements)) et (count (filtre # (= "UK"(: Country%)) events))]] Cette méthode fonctionne-t-elle? – Mangoski
Je veux vérifier deux conditions: mon 'Status' devrait être' Failed' et mon 'country' devrait être' UK'. – Mangoski