0

ich in der Splunk habe protokolliert Nachrichten mit folgendem Format:Splunk Abfrage zur Trennung von Summen von Einträgen innerhalb eines Zeitrahmens

LogService Produkt-ID = 1 Preis = 10,00 numberOfClients = 4 Gewinn = 5.00

I müssen, um eine Abfrage zu erstellen, die alle Datensätze aus dem letzten Tag finden und berechnen:

Summe (Preis * numberOfClients)/sum (Gewinn),

und Alarme auslösen, wenn das Ergebnis nicht innerhalb ist [ 0,2, 0,8], wobei Summe die Summe des Wertes ist s für alle protokollierten Nachrichten.

Ich habe verschiedene Möglichkeiten ausprobiert, aber es hat nicht funktioniert. Bitte beraten.

Antwort

1

Die folgende Suche die Berechnung erstellen und wird Ergebnis nur zurück, wenn das Ergebnis unter 0,2 oder über 0,8

index=... 
|stats sum(price * numberOfClients) as A sum(profit) as B 
|eval C=A/B 
|where C<0.2 OR C>0.8 
+0

Die Argumentation hinter der Abfrage war korrekt ist, wird jedoch Preis * numberOfClients wie ein regex und Ursachen behandelt ein Fehler, also musste ich ein separates Eval vor den Statistiken machen, nur um das Produkt zu berechnen. – user998692

Verwandte Themen