AQL-Datenberechnungs-und Formatierungsfunktionen
Verwenden Sie AQL-Berechnungs-und Formatierungsfunktionen (Ariel Query Language) für Suchergebnisse, die aus den Ariel-Datenbanken abgerufen werden.
BASE64
- Zweck
- Gibt eine Base64 -codierte Zeichenfolge zurück, die Binärdaten darstellt.
- Beispiel
SELECT BASE64(payload) FROM events
CONCAT
- Zweck
- Verknüpft alle übergebenen Zeichenfolgen zu einer Zeichenfolge.
- Beispiel
SELECT CONCAT(username, ':', sourceip, ':', destinationip) FROM events LIMIT 5
DATEFORMAT
- Zweck
- Formatiert die Zeit in Millisekunden seit 00:00:00 UTC (Coordinated Universal Time, koordinierte Weltzeit) am 1. Januar 1970 in einem für Benutzer lesbaren Format.
- Beispiele
SELECT DATEFORMAT(startTime, 'yyyy-MM-dd hh:mm:ss') AS StartTime FROM eventsSELECT DATEFORMAT(starttime,'yyyy-MM-dd hh:mm') AS 'Start Time', DATEFORMAT(endtime, 'yyyy-MM-dd hh:mm') AS Storage_time, QIDDESCRIPTION(qid) AS 'Event Name' FROM events
DOUBLE
- Zweck
- Konvertiert einen Zahlenwert in eine Ganzzahl des Typs "Double".
- Beispiel
DOUBLE('1234')
LONG
- Zweck
- Konvertiert einen Zahlenwert in eine Ganzzahl des Typs "Long".
- Beispiele
SELECT destinationip, LONG(SUM(sourcebytes+destinationbytes)) AS TotalBytes FROM flows GROUP BY sourceip
PARSEDATETIME
- Zweck
- Übergeben Sie einen Zeitwert an den Parser, z. B.
PARSEDATETIME('time reference'). Die Zeitreferenz gibt die Parsingzeit für die Abfrage an.
- Beispiel
SELECT * FROM events START PARSEDATETIME('1 hour ago')
PARSETIMESTAMP
- Zweck
- Analysieren Sie die Textdarstellung von Datum und Uhrzeit und konvertieren Sie sie in UNIX-Epochenzeit.
Analysieren Sie beispielsweise das folgende Textdatumsformat:
Thursday, August 24, 2017 3:30:32 PM GMT +01:00 und konvertieren Sie sie in die folgende Epochenzeitmarke: 1503588632.
- Beispiel für die Funktionsweise der Zeitformatkonvertierung
Das folgende Beispiel veranschaulicht, wie die Funktion DATEFORMAT die Epochenzeit unter Verwendung des angegebenen Datumsformats in eine Textzeitmarke konvertiert. Anschließend wird die Funktion PARSETIMESTAMP verwendet, um die Textzeitmarke in ein Epochenzeitformat zu konvertieren.
SELECT starttime, DATEFORMAT(starttime,'EEE, MMM d, "yyyy"') AS "text time format", PARSETIMESTAMP('EEE, MMM d, "yyyy"', "text time format") AS 'epoch time returned' from events limit 5Das folgende Beispiel zeigt einen Auszug der Ausgabe aus der Abfrage:
starttime text time format epoch time returned 1503920389888 Mon, M08 28, "2017" 1503920389888
- Beispiel für die Verwendung von PARSETIMESTAMP zum Konvertieren von Zeiten in Epochenzeit, sodass Zeitberechnungen durchgeführt werden können
Im folgenden Beispiel werden Ereignisse zurückgegeben, wenn die Zeitdifferenz zwischen Abmelde-und Anmeldezeit weniger als 1 Stunde beträgt.
Das EEE, d MMM yyyy HH:mm:ss.SSSZ -Zeitformat ist nur ein Beispiel für ein Zeitformat, das Sie verwenden können, und my_login und my_logout sind angepasste Eigenschaften in einem bekannten Zeitformat, z. B. EEE, MMM d, "yy".
SELECT * from events WHERE PARSETIMESTAMP('EEE, d MMM yyyy HH:mm:ss.SSSZ', my_logout) - PARSETIMESTAMP('EEE, d MMM yyyy HH:mm:ss.SSSZ', my_login) < 3600000 last 10 days
NOW
- Zweck
- Gibt die aktuelle Uhrzeit in Millisekunden seit dem 1. Januar 1970, 00:00:00 Uhr UTC (Coordinated Universal Time), zurück.
- Beispiel
SELECT ASSETUSER(sourceip, NOW()) AS 'Asset user' FROM events
LOWER
- Zweck
Gibt eine Zeichenfolge in Kleinbuchstaben zurück.
- Beispiel
SELECT LOWER(username), LOWER(LOGSOURCENAME(logsourceid)) FROM events
REPLACEALL
- Zweck
- Gleicht einen regulären Ausdruck ab und ersetzt alle Übereinstimmungen durch den angegebenen Text.
- Beispiel
REPLACEALL('\d{16}', username, 'censored')
REPLACEFIRST
- Zweck
- Gleicht einen regulären Ausdruck ab und ersetzt die erste Übereinstimmung durch den angegebenen Text.
- Beispiel
REPLACEFIRST('\d{16}', username, 'censored')
STR
- Zweck
- Konvertiert Parameter jeden Typs in eine Zeichenfolge.
- Beispiel
STR(sourceIP)
STRLEN
- Zweck
- Gibt die Länge einer Zeichenfolge zurück.
- Beispiel
SELECT STRLEN(sourceIP), STRLEN(username) from events
STRPOS
- Zweck
- Gibt die Position (Index-beginnt bei Null) einer Zeichenfolge in einer anderen Zeichenfolge zurück. Sucht in der Zeichenfolge nach dem Index der angegebenen Unterzeichenfolge. Optional können Sie einen zusätzlichen Parameter angeben, um anzugeben, an welcher Position (Index) nach dem angegebenen Muster gesucht werden soll.
- Beispiele
SELECT STRPOS(username, 'name') FROM events
SUBSTRING
- Zweck
- Kopiert einen Zeichenbereich in eine neue Zeichenfolge.
- Beispiele
SELECT SUBSTRING(userName, 0, 3) FROM events
UPPER
- Zweck
- Gibt eine Zeichenfolge in Großbuchstaben zurück.
- Beispiel
SELECT UPPER(username), UPPER(LOGSOURCENAME(logsourceid)) FROM events
UTF8
- Zweck
- Gibt die UTF8-Zeichenfolge eines Byte-Arrays zurück.
- Beispiel
SELECT UTF8(payload) FROM events WHERE sourceip='192.0.2.0'