tencent cloud

Cloud Log Service

論理関数と数学関数

ダウンロード
フォーカスモード
フォントサイズ
最終更新日: 2026-10-12 14:51:40
AI翻訳

概要

論理関数と数学関数には、論理積・論理和・論理否定、大なり・小なり・等号、加減乗除・剰余の演算が含まれます。プログラム言語での記述方法とは若干異なります。下図に示す通りです:



op_if関数

関数定義

条件に基づいて判断し、対応する値を返します。

構文記述

op_if(条件1, 値1, 値2)

パラメータ説明

パラメータ名
パラメータ説明
パラメータタイプ
必須かどうか
パラメータのデフォルト値
パラメータの値の範囲
condition
条件式
bool
はい
-
-
data1
条件がTrueの場合、このパラメータ値を返します。
string
はい
-
-
data2
条件がFalseの場合、このパラメータ値を返します。
string
はい
-
-

例

例1
元のログ:
{"data": "abc"}
加工ルール:
fields_set("result", op_if(True, v("data"), "false"))
加工結果:
{"result":"abc","data":"abc"}
例2
元のログ:
{"data": "abc"}
加工ルール:
fields_set("result", op_if(False, v("data"), "123"))
加工結果:
{"result":"123","data":"abc"}

op_and関数

関数定義

値に対してand演算を行い、すべてTrueの場合はTrueを返し、それ以外の場合はFalseを返します。

構文記述

op_and(値1, 値2, ...)

パラメータ説明

パラメータ名
パラメータ説明
パラメータタイプ
必須かどうか
パラメータのデフォルト値
パラメータの値の範囲
可変引数リスト
計算に参加するパラメータまたは式
string
はい
-
-

例

例1
元のログ:
{}
加工ルール:
fields_set("result", op_and(True, False))
加工結果:
{"result":"false"}
例2
元のログ:
{}
加工ルール:
fields_set("result", op_and(1, 1))
加工結果:
{"result":"true"}
例3
元のログ:
{"data":"false"}
加工ルール:
fields_set("result", op_and(1, v("data")))
加工結果:
{"result":"false","data":"false"}

op_or関数

関数定義

パラメータ値にTrueが存在する場合はTrueを返します。すべてのパラメータ値がFalseの場合にのみFalseを返します。

構文記述

op_or(値1, 値2, ...)

パラメータ説明

パラメータ名
パラメータ説明
パラメータタイプ
必須かどうか
パラメータのデフォルト値
パラメータの値の範囲
可変引数リスト
計算に参加するパラメータまたは式
string
はい
-
-

例

元のログ:
{}
加工ルール:
fields_set("result", op_or(True, False))
加工結果:
{"result":"true"}

op_not関数

関数定義

値に対してnot演算を行います。

構文記述

op_not(値)

パラメータ説明

パラメータ名
パラメータ説明
パラメータタイプ
必須かどうか
パラメータのデフォルト値
パラメータの値の範囲
data
任意の型の値
any
はい
-
-

例

例1
元のログ:
{}
加工ルール:
fields_set("result", op_not(True))
加工結果:
{"result":"false"}
例2
元のログ:
{}
加工ルール:
fields_set("result", op_not("True"))
加工結果:
{"result":"false"}

op_eq関数

関数定義

値を比較し、等しい場合はTrueを返します。

構文記述

op_eq(値1, 値2)

パラメータ説明

パラメータ名
パラメータ説明
パラメータタイプ
必須かどうか
パラメータのデフォルト値
パラメータの値の範囲
data1
数値型の値、または数値に変換可能な文字列
number
はい
-
-
data2
数値型の値、または数値に変換可能な文字列
number
はい
-
-

例

例1:フィールド「Post」と「Get」の値が等しいかどうかを判断します。
元のログ:
{"Post": "10", "Get": "11"}
加工ルール:
fields_set("result", op_eq(v("Post"), v("Get")))
結果をresultに保存します。
加工結果:
{"result":"false","Post":"10","Get":"11"}
例2:フィールド「field1」と「field2」の値が等しいかどうかを判断します。
元のログ:
{"field1": "1", "field2": "1"}
加工ルール:
fields_set("result", op_eq(v("field1"), v("field2")))
加工結果:
{"result":"true","field1":"1","field2":"1"}

op_ge関数

関数定義

値を比較し、値1が値2以上の場合にTrueを返します。

構文記述

op_ge(値1, 値2)

パラメータ説明

パラメータ名
パラメータ説明
パラメータタイプ
必須かどうか
パラメータのデフォルト値
パラメータの値の範囲
data1
数値型の値、または数値に変換可能な文字列
number
はい
-
-
data2
数値型の値、または数値に変換可能な文字列
number
はい
-
-

例

例1
元のログ:
{"field1": "20", "field2": "9"}
加工ルール:
fields_set("result", op_ge(v("field1"), v("field2")))
加工結果:
{"result":"true","field1":"20","field2":"9"}
例2
元のログ:
{"field1": "2", "field2": "2"}
加工ルール:
fields_set("result", op_ge(v("field1"), v("field2")))
加工結果:
{"result":"true","field1":"2","field2":"2"}

op_gt関数

関数定義

値を比較し、値1が値2より大きい場合にTrueを返します。

構文記述

op_gt(値1, 値2)

パラメータ説明

パラメータ名
パラメータ説明
パラメータタイプ
必須かどうか
パラメータのデフォルト値
パラメータの値の範囲
data1
数値型の値、または数値に変換可能な文字列
number
はい
-
-
data2
数値型の値、または数値に変換可能な文字列
number
はい
-
-

例

元のログ:
{"field1": "20", "field2": "9"}
加工ルール:
fields_set("result", op_ge(v("field1"), v("field2")))
加工結果:
{"result":"true","field1":"20","field2":"9"}

op_le関数

関数定義

値を比較し、値1が値2以下の場合にTrueを返します。

構文記述

op_le(値1, 値2)

パラメータ説明

パラメータ名
パラメータ説明
パラメータタイプ
必須かどうか
パラメータのデフォルト値
パラメータの値の範囲
data1
数値型の値、または数値に変換可能な文字列
number
はい
-
-
data2
数値型の値、または数値に変換可能な文字列
number
はい
-
-

例

元のログ:
{"field1": "2", "field2": "2"}
加工ルール:
fields_set("result", op_le(v("field1"), v("field2")))
加工結果:
{"result":"true","field1":"2","field2":"2"}

op_lt関数

関数定義

値を比較し、値1が値2より小さい場合にTrueを返します。

構文記述

op_lt(値1, 値2)

パラメータ説明

パラメータ名
パラメータ説明
パラメータタイプ
必須かどうか
パラメータのデフォルト値
パラメータの値の範囲
data1
数値型の値、または数値に変換可能な文字列
number
はい
-
-
data2
数値型の値、または数値に変換可能な文字列
number
はい
-
-

例

元のログ:
{"field1": "2", "field2": "3"}
加工ルール:
fields_set("result", op_lt(v("field1"), v("field2")))
加工結果:
{"result":"true","field1":"2","field2":"3"}

op_add関数

関数定義

値を合計します。

構文記述

op_add(値1, 値2)

パラメータ説明

パラメータ名
パラメータ説明
パラメータタイプ
必須かどうか
パラメータのデフォルト値
パラメータの値の範囲
data1
数値型の値、または数値に変換可能な文字列
number
はい
-
-
data2
数値型の値、または数値に変換可能な文字列
number
はい
-
-

例

元のログ:
{"field1": "1", "field2": "2"}
加工ルール:
fields_set("result", op_add(v("field1"), v("field2")))
加工結果:
{"result":"3","field1":"1","field2":"2"}

op_sub関数

関数定義

値の差を求めます。

構文記述

op_sub(値1, 値2)

パラメータ説明

パラメータ名
パラメータ説明
パラメータタイプ
必須かどうか
パラメータのデフォルト値
パラメータの値の範囲
data1
数値型の値、または数値に変換可能な文字列
number
はい
-
-
data2
数値型の値、または数値に変換可能な文字列
number
はい
-
-

例

元のログ:
{"field1": "1", "field2": "2"}
加工ルール:
fields_set("result", op_sub(v("field1"), v("field2")))
加工結果:
{"result":"-1","field1":"1","field2":"2"}

op_mul関数

関数定義

値の積を求めます。

構文記述

op_mul(値1, 値2)

パラメータ説明

パラメータ名
パラメータ説明
パラメータタイプ
必須かどうか
パラメータのデフォルト値
パラメータの値の範囲
data1
数値型の値、または数値に変換可能な文字列
number
はい
-
-
data2
数値型の値、または数値に変換可能な文字列
number
はい
-
-

例

元のログ:
{"field1": "1", "field2": "2"}
加工ルール:
fields_set("result", op_mul(v("field1"), v("field2")))
加工結果:
{"result":"2","field1":"1","field2":"2"}

op_div関数

関数定義

値の除算を行います。

構文記述

op_div(値1, 値2)

パラメータ説明

パラメータ名
パラメータ説明
パラメータタイプ
必須かどうか
パラメータのデフォルト値
パラメータの値の範囲
data1
数値型の値、または数値に変換可能な文字列
number
はい
-
-
data2
数値型の値、または数値に変換可能な文字列
number
はい
-
-

例

例1
元のログ:
{"field1": "1", "field2": "2"}
加工ルール:
fields_set("result", op_div(v("field1"), v("field2")))
加工結果:
{"result":"0","field1":"1","field2":"2"}
例2
元のログ:
{"field1": "1.0", "field2": "2"}
加工ルール:
fields_set("result", op_div(v("field1"), v("field2")))
加工結果:
{"result":"0.5","field1":"1.0","field2":"2"}

op_sum関数

関数定義

複数の値を累積して合計します。

構文記述

op_sum(値1, 値2, ...)

パラメータ説明

パラメータ名
パラメータ説明
パラメータタイプ
必須かどうか
パラメータのデフォルト値
パラメータの値の範囲
可変引数リスト
数値型の値、または数値に変換可能な文字列
string
はい
-
-

例

元のログ:
{"field1": "1.0", "field2": "10"}
加工ルール:
fields_set("result", op_sum(v("field1"), v("field2")))
加工結果:
{"result":"11.0","field1":"1.0","field2":"10"}

op_mod関数

関数定義

値に対して剰余演算を行います。

構文記述

op_mod(値1, 値2)

パラメータ説明

パラメータ名
パラメータ説明
パラメータタイプ
必須かどうか
パラメータのデフォルト値
パラメータの値の範囲
data1
数値型の値、または数値に変換可能な文字列
number
はい
-
-

例

例1
元のログ:
{
"field1": "3",
"field2": "2"
}
加工ルール:
fields_set("result", op_mod(v("field1"), v("field2")))
加工結果:
{"field1":"3","field2":"2","result":"1"}
例2
元のログ:
{"field1": "1.0", "field2": "5"}
加工ルール:
fields_set("result", op_mod(v("field1"), v("field2")))
加工結果:
{"result":"1.0","field1":"1.0","field2":"5"}
例3
元のログ:
{"field1": "6", "field2": "4"}
加工ルール:
fields_set("result", op_mod(v("field1"), v("field2")))
加工結果:
{"result":"2","field1":"6","field2":"4"}

op_null関数

関数定義

値をnullかどうか判定し、nullの場合はtrueを返し、それ以外の場合はfalseを返します。

構文記述

op_null(値)

パラメータ説明

パラメータ名
パラメータ説明
パラメータタイプ
必須かどうか
パラメータのデフォルト値
パラメータの値の範囲
data
任意の型の値
any
はい
-
-

例

例1
元のログ:
{}
加工ルール:
fields_set("result", op_null("null"))
加工結果:
{"result":"true"}
例2
元のログ:
{"data": null}
加工ルール:
fields_set("result", op_null(v("data")))
加工結果:
{"data": "null", "result":"true"}

op_notnull関数

関数定義

値を非nullかどうか判定し、非nullの場合はtrueを返し、それ以外の場合はfalseを返します。

構文記述

op_notnull(値)

パラメータ説明

パラメータ名
パラメータ説明
パラメータタイプ
必須かどうか
パラメータのデフォルト値
パラメータの値の範囲
data
任意の型の値
any
はい
-
-

例

例1
元のログ:
{}
加工ルール:
fields_set("result", op_notnull("null"))
加工結果:
{"result":"false"}
例2
元のログ:
{"data": null}
加工ルール:
fields_set("result", op_notnull(v("data")))
加工結果:
{"data": "null", "result":"false"}

op_str_eq関数

関数定義

文字列値を比較し、等しい場合はtrueを返します。

構文記述

op_str_eq(値1, 値2, ignore_upper=False)

パラメータ説明

パラメータ名
パラメータ説明
パラメータタイプ
必須かどうか
パラメータのデフォルト値
パラメータの値の範囲
data1
文字列型の値
string
はい
-
-
data2
文字列型の値
string
はい
-
-
ignore_upper
大文字と小文字を区別するかどうか
bool
いいえ
False
-

例

例1
元のログ:
{"field": "cls"}
加工ルール:
fields_set("result", op_str_eq(v("field"), "cls"))
加工結果:
{"result":"true","field":"cls"}
例2
元のログ:
{"field": "cls"}
加工ルール:
fields_set("result", op_str_eq(v("field"), "etl|cls|data"))
加工結果:
{"result":"true","field":"cls"}
例3
元のログ:
{"field": "CLS"}
加工ルール:
fields_set("result", op_str_eq(v("field"), "cls", ignore_upper=True))
加工結果:
{"result":"true","field":"CLS"}
例4
元のログ:
{"field": "CLS"}
加工ルール:
fields_set("result", op_str_eq(v("field"), "etl|cls|data", ignore_upper=True))
加工結果:
{"result":"true","field":"CLS"}

random関数

関数定義

2つのパラメータ間の乱数を生成します。区間は左閉右閉です。

構文記述

random(値1, 値2)

パラメータ説明

パラメータ名
パラメータ説明
パラメータタイプ
必須かどうか
パラメータのデフォルト値
パラメータの値の範囲
data1
数値型の値、または数値に変換可能な文字列
number
はい
-
-
data2
数値型の値、または数値に変換可能な文字列
number
はい
-
-

例

例1
元のログ:
{"field1": "1"}
加工ルール:
log_keep(op_eq(random(3, 5), 4))
加工結果:
{"field1": "1"}
例2
元のログ:
{"field1": "1"}
加工ルール:
fields_set("field2", random(1, 5))
加工結果:
{"field1":"1", "field2":"4"}

op_len関数

関数定義

テキスト文字列内の文字数を計算し、文字列やタプル、リスト、辞書を返すその他の式に使用できます。

構文記述

op_len(value)

パラメータ説明

パラメータ名
パラメータ説明
パラメータタイプ
必須かどうか
パラメータのデフォルト値
パラメータの値の範囲
value
-
文字列、タプル、リスト、辞書など
はい
-
-

例

元のログ:
{"data":"[1,2]"}
加工ルール:
fields_set("length", op_len(v("data")))
加工結果:
{"length":"2","data":"[1,2]"}

op_ne関数

関数定義

a!=bの条件に従って計算し、TrueまたはFalseを返します。

構文記述

op_ne(value1, value2)

パラメータ説明

パラメータ名
パラメータ説明
パラメータタイプ
必須かどうか
パラメータのデフォルト値
パラメータの値の範囲
value1
比較対象の値。
数値型の値、または数値に変換可能な文字列
はい
-
-
value2
value1と比較します。
数値型の値、または数値に変換可能な文字列
はい
-
-

例

元のログ:
{"data1": "1","data2": "2"}
加工ルール:
fields_set("result", op_ne(v("data1"), v("data2")))
加工結果:
{"result":"true","data1": "1","data2": "2"}

ヘルプとサポート

この記事はお役に立ちましたか?

フィードバック