13.4.5. 関数一覧
13.4.5.1. debug
debug(value: any)
渡された値を文字列としてGraylogログに出力します。
デバッグメッセージは、デバッグしようとしているメッセージを処理しているGraylogノードのログにのみ表示されます。
例:
// Print: "INFO : org.graylog.plugins.pipelineprocessor.ast.functions.Function - PIPELINE DEBUG: Dropped message from <source>"
let debug_message = concat("Dropped message from ", to_str($message.source));
debug(debug_message);
13.4.5.2. to_bool
to_bool(value: any)
文字列値を使用して、単一のパラメータをブール値に変換します。
13.4.5.3. to_double
to_double(value: any, [default: double])
最初のパラメーターをdouble浮動小数点値に変換します。
13.4.5.4. to_long
to_long(value: any, [default: long])
最初のパラメータをlong整数値に変換します。
13.4.5.5. to_str
to_str(value: any, [default: str])
最初のパラメータを文字列表現に変換します。
13.4.5.6. to_url
to_url(url: any, [default: str])
文字列表現を使用して値を有効なURLに変換します。
13.4.5.7. is_null
is_null(value: any)
値がnullかどうかをチェックします。
13.4.5.8. is_not_null
is_not_null(value: any)
値が nullでないかどうかをチェックします。
13.4.5.9. abbreviate
abbreviate(value: str, width: long)
ellipsesを使用して文字列を省略します。
13.4.5.10. capitalize
capitalize(value: str)
最初の文字を大文字にします。
13.4.5.11. uncapitalize
uncapitalize(value: str)
最初の文字を小文字にします。
13.4.5.12. uppercase
uppercase(value: str, [locale: str])
大文字に変換します。
localeのデフォルトはenです。
13.4.5.13. lowercase
lowercase(value: str, [locale: str])
小文字に変換します。
localeのデフォルトはenです。
13.4.5.14. swapcase
swapcase(value: str)
大文字と小文字を入れ替えます。
13.4.5.15. contains
contains(value: str, search: str,
[ignore_case: boolean])
valueにsearchが含まれているかどうかをチェックし、オプションで検索パターンの大文字と小文字を無視します。
13.4.5.16. substr
substr(value: str, start: long, [end: long])
startオフセット(ゼロベースのインデックス)から始まるvalue部分文字列を返します。オプションでendオフセットを指定できます。
13.4.5.17. concat
concat(first: str, second: str)
firstとsecondテキストを結合した新しい文字列を返します。
13.4.5.18. split
split(pattern: str, value: str, [limit: int])
pattern文字列で、strを分割します。limitオプションを指定することで、分割する回数を指定できます。
パターンは有効な Java文字列リテラル でなければなりません。正規表現でバックスラッシュをエスケープしてください。
13.4.5.19. regex
regex(pattern: str, value: str,
[group_names: array[str])
patternの正規表現とvalueを一致するか検査します。
正規表現でグルーピングしている場合、groupe_namesオプションの配列を使用してグループ名をつけられます。
名前がつけられていない場合、グループ名を0で始まる文字列です。
13.4.5.20. grok
grok(pattern: str, value: str,
[only_named_captures: boolean])
Grokパターンpatternをvalueに適用します。
only_named_capturesだけをtrueに設定すると、名前付きキャプチャを使用して一致を返すことができます。
13.4.5.21. key_value
key_value(
value: str,
[delimiters: str],
[kv_delimiters: str],
[ignore_empty_values: boolean],
[allow_dup_keys: boolean],
[handle_dup_keys: str],
[trim_key_chars: str],
[trim_value_chars: str]
)
指定されたvalueからキーと値の北亜を抽出し、フィールド名と値のマップとして返します。オプションで以下を指定することができます。
delimiters
- ペアの区切り文字。デフォルト値: スペース
kv_delimiters
- キーと値を区切るために使用される文字。デフォルト値: =
ignore_empty_values
- 空の値を許可するかどうか。デフォルト値: true
allow_dup_keys
- 重複キーを許可するかどうか。デフォルト値: true
handle_dup_keys
- take_firstを指定すると重複したキーの最初を採用します。
take_lastを指定すると重複したキーの最後を採用します。
","などを指定すると、キーの値が,で結合されます。
デフォルト値: take_first
trim_key_chars
- キーの文字をトリムする
trim_value_chars
- 値の文字をトリムする
Tip: key_value関数の実行結果をkey_value引数として渡して、抽出されたフィールドをメッセージに設定することができます。
13.4.5.22. crc32
crc32(value: str)
CRC32ダイジェストを作成します。
13.4.5.23. crc32c
crc32c(value: str)
CRC32C(RFC 3720、セクション12.1)ダイジェストを作成します。
13.4.5.24. md5
md5(value: str)
MD5ダイジェストを作成します。
13.4.5.25. murmur3_32
murmur3_32(value: str)
MurmurHash3(32ビット)ダイジェストを作成します。
13.4.5.26. murmur3_128
murmur3_128(value: str)
MurmurHash3(128ビット)ダイジェストを作成します。
13.4.5.27. sha1
sha1(value: str)
SHA1ダイジェストを作成します。
13.4.5.28. sha256
sha256(value: str)
SHA256ダイジェストを作成します。
13.4.5.29. sha512
sha512(value: str)
SHA512ダイジェストを作成します。
13.4.5.30. parse_json
parse_json(value: str)
JSON文字列をJSONツリーオブジェクトに変換します。
13.4.5.31. select_jsonpath
select_jsonpath(json: JsonNode,
paths: Map<str, str>)
指定されたpathsをjsonツリーに対して評価し、結果の値のマップを返します。
13.4.5.32. to_ip
to_ip(ip: str)
指定されたip文字列をIpAddressオブジェクトに変換します。
13.4.5.33. cidr_match
cidr_match(cidr: str, ip: IpAddress)
指定されたipアドレスオブジェクトがcidrパターンと一致するかどうかを確認します。
13.4.5.35. route_to_stream
route_to_stream(id: str |
name: str, [message: str],
[remove_from_default: boolean])
messageを指定されたstreamにルーティングします 。 streamは、nameまたはidで指定できます。
messageが省略された場合、この関数は現在処理中のメッセージを使用します。
remove_from_defaultがtrue場合、メッセージはデフォルトstream "All messages"からも削除されます。
13.4.5.36. remove_from_stream
remove_from_stream(id: str | name: str,
[message: str])
messageを指定されたstreamから削除します 。 streamは、nameまたはidで指定できます。
messageが省略された場合、この関数は現在処理中のメッセージを使用します。
削除した結果、メッセージがすべてのstreamから外れた場合、デフォルトstream "All messages"に戻されます。
明示的に完全な削除をしたい場合、drop_messages関数を使用します。
13.4.5.37. create_message
create_message([message: str], [source: str],
[timestamp: DateTime])
指定されたパラメータから新しいメッセージを作成します。
いずれかが省略された場合、その値は現在処理中のメッセージの対応するフィールドから取得されます。
timestampが省略された場合、作成されたメッセージのタイムスタンプはその時点のタイムスタンプになります。
13.4.5.38. clone_message
clone_message([message: str])
メッセージをクローンします。 messageが省略された場合、この関数は現在処理中のメッセージを使用します。
13.4.5.39. drop_message
drop_message(message: str)
処理パイプラインは、ルールの実行が終了した後に、指定されたmessageを削除します。
messageが省略された場合、この関数は現在処理中のメッセージを使用します。
13.4.5.40. has_field
has_field(field: str, [message: str])
指定されたmessageにfieldが含まれているかどうかを確認します。
messageが省略された場合、この関数は現在処理中のメッセージを使用します。
13.4.5.41. remove_field
remove_field(field: str, [message: str])
指定されたmessageから指定されたfieldを削除します。
messageが省略された場合、この関数は現在処理中のメッセージを使用します。
13.4.5.42. set_field
set_field(field: str, value: any,
[prefix: str], [suffix: str], [message: str])
指定されたfieldにvalueを設定します。fieldは有効な文字列でなければならず、 .を含むことはできません。
先頭と末尾の空白は削除されます。
オプションのprefixおよびsuffixパラメータは、挿入されたフィールド名に追加する接頭辞または接尾辞を指定します。
messageが省略された場合、この関数は現在処理中のメッセージを使用します。
13.4.5.43. set_fields
set_fields(fields: Map<str, any>,
[prefix: str], [suffix: str], [message: str])
指定されたメッセージのfieldに、指定された名前と値のペアをすべて設定します。
これは、 set_fieldのように機能する便利な関数です 。
オプションのprefixおよびsuffixパラメータは、挿入されたフィールド名に追加する接頭辞または接尾辞を指定します。
messageが省略された場合、この関数は現在処理中のメッセージを使用します。
13.4.5.44. rename_field
rename_field(old_field: str,
new_field: str, [message: str])
指定されたメッセージのフィールド名old_fieldをnew_fieldに変更します。
値は変更されません。
13.4.5.45. syslog_facility
syslog_facility(value: any)
syslogファシリティ番号valueを文字列表現に変換します。
13.4.5.46. syslog_level
syslog_level(value: any)
syslogレベルvalueを文字列表現に変換します。
13.4.5.47. expand_syslog_priority
expand_syslog_priority(value: any)
syslog優先順位番号を数値重大度とファシリティ値に変換します。
13.4.5.48. expand_syslog_priority_as_str
expand_syslog_priority_as_str(value: any)
syslog優先度番号を重大度およびファシリティ文字列表現に変換します。
13.4.5.49. now
now([timezone: str])
現在の日付と時刻を返します。 デフォルトのタイムゾーンUTC使用します。
13.4.5.50. parse_date
parse_date(value: str, pattern: str,
[locale: str], [timezone: str])
patternを使用して、 valueを日付と時刻のオブジェクトに変換します 。
パターンでタイムゾーンが検出されない場合は、オプションのtimezoneパラメータが想定されるタイムゾーンとして使用されます。
省略すると、タイムゾーンのデフォルトはUTCになります。
記号 |
意味 |
形式 |
例 |
G |
era |
text |
AD |
C |
century of era (>=0) |
number |
20 |
Y |
year of era (>=0) |
year |
1996 |
x |
weekyear |
year |
1996 |
w |
week of weekyear |
number |
27 |
e |
day of week |
number |
2 |
E |
day of week |
text |
Tuesday; Tue |
y |
year |
year |
1996 |
D |
day of year |
number |
189 |
M |
month of year |
month |
July; Jul; 07 |
d |
day of month |
number |
10 |
a |
halfday of day |
text |
PM |
K |
hour of halfday (0~11) |
number |
0 |
h |
clockhour of halfday (1~12) |
number |
12 |
H |
hour of day (0~23) |
number |
0 |
k |
clockhour of day (1~24) |
number |
24 |
m |
minute of hour |
number |
30 |
s |
second of minute |
number |
55 |
S |
fraction of second |
millis |
978 |
z |
time zone |
text |
Pacific Standard Time; PST |
Z |
time zone offset/id |
zone |
-0800; -08:00; America/Los_Angeles |
' |
escape for text |
delimiter |
|
'' |
single quote |
literal |
' |
13.4.5.51. flex_parse_date
flex_parse_date(value: str,
[default: DateTime], [timezone: str])
Natty日付パーサを使用して日付と時刻のvalueを解析します。
パターンでタイムゾーンが検出されない場合は、オプションのtimezoneパラメータが想定されるタイムゾーンとして使用されます。 省略すると、タイムゾーンのデフォルトはUTCになります。
13.4.5.53. to_date
to_date(value: any, [timezone: str])
valueを日付に変換します。 timezoneが指定されていない場合、デフォルトはUTCです。
13.4.5.54. years
years(value: long)
valueの年数でピリオドを作成します。
13.4.5.55. months
months(value: long)
valueの月数で月を作成します。
13.4.5.56. weeks
weeks(value: long)
valueの週数でピリオドを作成します。
13.4.5.57. days
days(value: long)
valueの日数でピリオドを作成します。
13.4.5.58. hours
hours(value: long)
valueの時間数でピリオドを作成します。
13.4.5.59. minutes
minutes(value: long)
valueの分数のピリオドを作成します。
13.4.5.60. seconds
seconds(value: long)
valueの秒数でピリオドを作成します。
13.4.5.61. millis
millis(value: long)
ミリ秒のvalue持つピリオドを作成します。
13.4.5.62. period
period(value: str)
valueからISO 8601で適宜された期間を解析します。
13.4.5.63. lookup
lookup(lookup_table: str, key: any,
[default: any])
名前付きルックアップテーブルで複数の値を検索します。
13.4.5.64. lookup_value
lookup_value(lookup_table: str,
key: any, [default: any])
名前付きルックアップテーブルで単一の値を検索します。