eval
evalコマンドを使用して、式の値を計算し、その値を新しいフィールドに表示します。
-
statsコマンドは既存のフィールドに基づいて統計を計算しますが、evalコマンドは、既存のフィールドと任意の式を使用して新規フィールドを作成します。 -
indexofやsubstrなどの文字列処理関数は、リソースを大量に消費します。このため、多数のログ・レコードに対してこれらの関数を使用してevalコマンドを実行するか、フィールド値を大きくすることはお薦めしません。かわりに、ログ・ソースの拡張フィールド定義(EFD)またはラベルを使用してこれらの値を抽出します。ソースでの拡張フィールドの使用およびソースでのラベルの使用を参照してください。 -
evalコマンドで使用されるフィールド名に文字[および]が含まれていないことを確認します。
構文
*|eval <new_field_name>=<expression>コマンドで使用可能な演算子およびファンクション:
次の表に、evalコマンドで使用できる演算子を示します。
| カテゴリ | 例 |
|---|---|
|
算術演算子 |
+, -, *, /, % |
|
比較演算子 |
=, !=, <, >, <=, >= |
|
論理演算子 |
and, or, not |
|
条件演算子 |
if(<expression>,<expression>,<expression>) |
|
複数比較演算子 |
in, not in |
次の表に、evalコマンドで使用できるファンクションを示します。
文字列ファンクション
通常、関数の入力はリテラル文字列または文字列フィールドにできます。
| ファンクション | 説明 | 例 |
|---|---|---|
|
|
文字列の最初の文字を大文字にします。 |
|
|
|
2つ以上の文字列を末尾から末尾にまとめて1つの文字列に結合します。
|
|
|
|
Base64でエンコードされたテキストを読取り可能な(UTF-8)文字列にデコードして、結果表に表示したり、それ以外で使用できるようにします。この関数を使用して、ログ・ペイロードまたはメタデータ・フィールドがエンコードされたときに実際のコンテンツを表示します。 注意:文字列値がフィールドの場合、大/小文字が区別されるフィールドである必要があります。 |
|
|
|
入力文字列をBase64形式にエンコードします。 |
|
|
|
指定されたフィールドの名前を文字列として返します。 |
|
|
|
指定されたフィールドのデータ型(STRING、NUMBERなど)を返します。 |
|
|
|
文字列(リテラル文字列または文字列フィールド)内で最初に出現した部分文字列(リテラル文字列または文字列フィールド)の位置(索引)を返します。オプションで、オプションの3番目の引数を使用して検索の開始索引を指定できます。 indexof Function Detailsを参照してください。 |
|
|
|
文字列(リテラル文字列または文字列フィールド)内で最後に出現した部分文字列(リテラル文字列または文字列フィールド)の位置(索引)を返します。オプションで、検索元の開始索引(後方検索)を指定できます。 lastindexof Function Detailsを参照してください。 |
|
|
|
文字列内の文字数を返します。 |
|
|
|
フィールド値または式をリテラル文字列に変換します。 |
|
|
|
文字列のすべての文字を小文字に変換します。 |
|
|
|
文字列の先頭(左)から先頭の空白(2番目の引数が指定されていない場合)または指定された一連の文字(オプションの2番目の引数)を削除します。 |
|
|
|
部分文字列の出現を新しい文字列に置き換えます。検索文字列と置換文字列の複数のペアを指定して、複数の置換を一度に実行できます。 replace Function Detailsを参照してください。 |
|
|
|
文字列内の文字の順序を逆にします。 |
|
|
|
指定された文字セットの末尾の空白を文字列の末尾(右側)から削除します。 |
|
|
|
指定されたインデックスから始まる文字列の一部を返します。オプションで、戻す部分文字列の長さを指定できます。 substr関数の詳細を参照してください。 |
|
|
|
文字列タイムスタンプをDateオブジェクトに変換します。オプションで、文字列タイムスタンプの解析に使用する形式を指定できます。 |
|
|
|
期間時間(HH:mm:ss)を表す文字列をDurationオブジェクトにカバーし、時間計算および比較操作を可能にします。 |
|
|
|
数値の文字列表現を実際の数値データ型に変換します。 |
|
|
|
文字列の両端から空白を削除します(デフォルト)。または、2番目の引数として指定された場合は、指定された部分文字列を削除します(オプション)。 |
|
|
|
文字列のすべての文字を大文字に変換します。 |
|
|
|
URLエンコードされた文字列を元の形式にデコードします。 |
|
|
|
文字列を同等のURL形式にエンコードします。 |
|
|
|
クリック可能なURLリンク(デフォルト)を作成し、表示名とパラメータをそれぞれ2番目と3番目のオプションの引数で指定します。 「url関数の詳細」および「Oracle定義のurlショートカット」を参照してください。 |
|
数値ファンクション
| ファンクション | 説明 | 例 |
|---|---|---|
|
|
数値の絶対値(正)を返します。 |
|
|
|
数値を最も近い整数(整数)に切り上げます。 |
|
|
|
数値で指定された2セットの座標間の距離を計算します。関数が返す値はマイル単位です。数字は度数です。 |
|
|
|
文字列で指定された2セットの座標間の距離を計算します。関数によって返される値はマイル単位です。数値は度数です。 |
|
|
|
数値を最も近い整数(整数)に切り捨てます。 |
|
|
|
数値継続時間値(秒)を時間コードのHH:mm:ss形式に変換します。 |
|
|
|
指定された2つの数値の高い値を返します。 |
|
|
|
指定された2つの数値の下限値を返します。 |
|
|
|
指定された累乗の数値を返します。 |
|
|
|
数値を最も近い整数に丸めます(デフォルト)。2番目の引数に指定されている場合は、特定の小数点以下の桁数に丸めます。 |
|
|
|
数値の平方根を計算します。 |
|
|
|
数値を文字列に変換します。 |
|
|
|
指定された特定の単位(KB、MB、バイト、秒など)で数値を書式設定します。 「unit関数でサポートされるタイプ」、「unit関数でサポートされる通貨タイプ」および「文字列関数」を参照してください。 |
|
日付ファンクション
whereコマンドと同様に、人間が読める文字列を使用して問合せの時間を操作できます。たとえば、10mins Laterという名前の新しいフィールドを作成するには、「時間」フィールドの値より10分進みます。
* | eval '10mins Later' = Time + 10mins
比較におけるユーザーフレンドリな時間文字列を参照してください。
| ファンクション | 説明 | 例 |
|---|---|---|
|
|
指定された時間(プロパティ= 時間、日、最小など)を日付から加算または減算します。 |
|
|
|
日付の特定の部分を設定します(つまり、時を0に設定して「深夜」を検索します)。 |
|
|
|
日付オブジェクトを表示用のカスタム文字列に書式設定します。 |
|
|
|
現在のシステム日時を戻します。 |
|
条件ファンクション
| ファンクション | 説明 | 例 |
|---|---|---|
|
|
IPアドレスが特定のCIDRブロックに属しているかどうかを確認します。 |
|
|
|
第1文字列が第2文字列を含む場合はtrueを返しますそれ以外の場合はfalseを返します。 |
|
|
|
文字列(最初の引数)が指定された部分文字列(2番目の引数)で終わる場合はtrueを返します。それ以外の場合はfalseを返します。 |
|
|
|
条件expression1を評価し、trueの場合はexpression2を返し、falseの場合はexpression3を返します。 |
|
|
|
指定された部分文字列で始まる場合にtrueを戻します。 |
|
|
|
いずれかの条件がtrueの場合はtrueを返し、それ以外の場合はfalseを返します。 |
|
|
|
すべての条件がtrueの場合はtrueを返し、それ以外の場合はfalseを返します。 |
|
|
|
いずれかのフィールドに指定された値がある場合はtrueを返し、それ以外の場合はfalseを返します。 |
|
|
|
すべてのフィールドに指定された値がある場合はtrueを返し、それ以外の場合はfalseを返します。 |
|
ハッシュ・ファンクション
| ファンクション | 説明 | 例 |
|---|---|---|
|
|
入力値のMD5ハッシュを生成します。 |
|
|
|
入力値のSHA-1ハッシュを生成します。 |
|
|
|
入力値のSHA-256ハッシュを生成します。 |
|
|
|
入力値のSHA-512を生成します。 |
|
ノート: 現在、md5ファンクションおよびshaファンクションは小文字のフィールド値に対して動作します。
三角関数
| ファンクション | 説明 | 例 |
|---|---|---|
|
|
ラジアン数値のアルコシン(逆コサイン)を返します。 |
|
|
|
数値の円弧(逆正弦)をラジアンで返します。 |
|
|
|
数値の逆正接をラジアン単位で戻します。 |
|
|
|
引数の商の逆正接を戻します(y=num1、x=num2)。 デカルト座標a=num1およびb=num2の極座標のラジアン単位の角度。 |
|
|
|
指定した角度(ラジアン)のコサイン値を返します。 |
|
|
|
数学的定数e (約2.718)を返します。 |
|
|
|
数学的定数piを返します(約3.141) |
|
|
|
角度(ラジアン)のサインをラジアンで返します。 |
|
|
|
指定した角度(ラジアン)のタンジェント値を返します。 |
|
|
|
角度をラジアンから度に変換します。 |
|
|
|
角度を度からラジアンに変換します。 |
|
パラメータ
次の表に、このコマンドで使用されるパラメータとその説明を示します。
| パラメータ | 説明 |
|---|---|
|
|
式の計算値を表示するフィールドの名前を指定します。 |
|
|
値を計算する必要がある式を指定します。 |
一般的なシナリオでこのコマンドを使用する例は、次を参照してください:
次に、evalコマンドのいくつかの例を示します。
*|eval newField = 'foo'*|eval newField = 123*|eval newField = upper(Target)*|eval newField = length('hello world')*|eval s =capitalize(severity)*|eval newField = concat(host, concat (':', port))*|eval n = contains(uri, '.com')*|eval n =endsWith(uri, '.com')*|eval n =startsWith(uri, 'http://oracle')*|eval s = decode64(value)*|eval s = encode64(uri)*|eval s = reverse(Command)*|eval newField = host || ':'|| port*|eval newField = round(123.4)*|eval newField = floor(4096/1024)+Length*|eval newField = if (max(Length)(Target), length(Severity)) <= 20, 'OK', 'ERROR')*|eval newField = urlDecode('http%3A%2F%2Fexample.com%3A893%2Fsolr%2FCORE_0_0%2Fquery')*|eval s = urlEncode(uri)*|eval newField = 'Host Name (Destination)' in (host1, host2)*|eval value = arccos(angle)*|eval value = arcsin(angle)*|eval value = arctan(angle)*|eval value = atan2(x, y)*|eval value = cos(angle)*|eval value = e()*|eval value = pi()*|eval value = sin(angle)*|eval value = tan(angle)*|eval value =toDegrees(angle)*|eval value =toRadians(angle)次の例は、フィールドsrvrhostipのIPアドレスをサブネット範囲と比較します。
*|eval newField = if (cidrmatch(srvrhostip, '192.0.2.254/25') = 1, 'local', 'not local')次の例は、文字列“Target”を返します。
*|eval newField = literal(Target)次の例は、両端からスペースとタブを削除します。
*|eval newField = trim(Label)次の例は、両端から一致する文字を削除します。
*|eval newField = trim('User Name',h)次の例は、左端から一致する文字を削除します。
*|eval newField = ltrim('Error ID',0)次の例は、右端から一致する文字を削除します。
*|eval newField = rtrim('OS Process ID',2)次の例は、フィールドdateをStart Dateに設定し、日付のフォーマットをMM/dd/yyyy HH:mmとして定義します。
*|eval date = toDate('Start Date', 'MM/dd/yyyy HH:mm')toDateファンクションは、次のようにエポックを処理するために使用することもできます。
... | where 'Start Time' > toDate(1405544998000)次の例は、フィールドdurationの値を1.30に設定します。
*|eval duration = toduration("1.30")次の例は、フィールドdurationの値を、End TimeとStart Timeの差異の数値に設定します。
*|eval duration = formatDuration('End Time' - 'Start Time')次の例は、日付ファンクションの使用方法を示しています。
*| eval lastHour = dateAdd(now(), hour, -1)
*| eval midnight = dateSet(now(), hour, 0, minute, 0, sec, 0, msec, 0)
*| eval timeOnly = formatDate(now(), 'HH:mm:ss')
*| eval now = now()evalコマンドでmd5、sha1、sha256およびsha512ハッシュ・ファンクションを使用して、ログ・データをフィルタできます。次の例は、フィールドuserの値を値sha1("jane")に設定します。
*|eval user = sha1("jane")次の例では、16進数を10進数に変換し、nは255に評価されます。
* | eval n = toNumber('0xFF')次の例では、8進数を10進数に変換し、nが10に評価されます。
* | eval n = toNumber('012')次のコマンドは、入力値が数値の場合に、度数で指定される2組のラットロング座標間の距離(マイル)を計算します。
* | eval n = distance(lat1, long1, lat2, long2) 次のコマンドでは、入力値が2つの文字列の場合に、2組の長い緯度座標間の距離(マイル単位)を計算します。
* | eval n = distance('lat1,long1', 'lat2,long2')unit関数の例
unitファンクションは、リンク、円グラフ、棒グラフまたは任意の表チャートで使用できます。
いくつかの簡単な例:
* | eval newField = unit('Content Size', KB)
* | eval 'File Size (bytes)' = unit('File Size', 'byte')
* | eval 'File Size (KB)' = unit('File Size'/1024, 'kb')
* | eval 'File Size (MB)' = unit('File Size'/(1024*1024), 'mb')
* | eval 'Time Taken (Sec)' = unit(Time/1000, 'SEC')
バイト、通貨、期間などの一般的な単位の例:
* | eval Vol = unit('Content Size Out', byte) | stats sum(Vol) as 'Total Volume'
* | eval Sales = unit('Sales Amount', currency_usd) | stats sum('Sales') as 'Total Sales'
* | eval 'Disk Read Time' = unit('Disk Read Time (millis)', ms) | stats avg('Disk Read Time') as 'Avg Disk Read Time'
最適な結果を得るには、「書式番号」オプションを選択して、タイル・ビジュアライゼーションに対して前述の3つの問合せを実行します。
サイズまたは期間タイプの単位を持つフィールドは、リンク分析チャート、addfieldsヒストグラム、リンク・テーブルおよびタイル・ビジュアライゼーションの値をフォーマットするために使用されます:
'Log Source' = 'FMW WebLogic Server Access Logs'
| link span = 5minute Time, Server
| stats avg('Duration') as 'Raw Avg. Duration'
avg('Content Size') as 'Raw Avg. Transfer Size'
| eval 'Average Duration' = unit('Raw Avg. Duration', ms)
| eval 'Average Transfer Size' = unit('Raw Avg. Transfer Size', byte)
| classify 'Start Time', 'Average Duration',
'Average Transfer Size' as 'Response Time vs. Download Sizes'
フィールドをUSドル、数千米ドル、数百万米ドル、または数十億米ドルを含むものとしてマークします。
| eval 'Amount in USD' = unit('Sales Price', currency_usd)
| eval 'Amount in Thousands (USD)' = usd('Quarterly Sales', currency_usd_thousand)
| eval 'Amount in Millions (USD)' = usd('Annual Profit', currency_usd_million)
| eval 'Amount in Billions (USD)' = usd('Annual Sales', currency_usd_billion)
unitファンクションでサポートされるタイプ
単位名:
PERCENT | PCT- データ・サイズ:
BYTEKILOBYTE | KBMEGABYTE | MBGIGABYTE | GBTERABYTE | TBPETABYTE | PBEXABYTE | EB
- 時間:
MILLISECOND | MSS | SEC | SECS | SECOND | SECONDSM | MIN | MINS | MINUTE | MINUTESH | HR | HRS | HOUR | HOURSD | DAY | DAYSW | WEEK | WEEKSMON | MONTH | MONTHSY | YR | YRS | YEAR | YEARSMICRO | µs
- 指数:
WATTKILOWATT | kWMEGAWATT | MWGIGAWATT | GWTERAWATT | TWPETAWATT | PWEXAWATT | EW
- 温度:
KELVIN | KCELSIUS | CFAHRENHEIT | F
- 頻度:
HERTZ | HzKILOHERTZ | kHzMEGAHERTZ | MHzGIGAHERTZ | GHzTERAHERTZ | THzPETAHERTZ | PHzEXAHERTZ | EHz
unit関数でサポートされる通貨タイプ
一般的なシナリオでのファンクションの使用については、evalコマンド・サンプル・リンクを参照してください。
次の書式を使用して通貨単位を指定します。
eval <New Field> = unit(<Field>, currency_<ISO-4217 Code>)
eval <New Field> = unit(<Field>, currency_<ISO-4217 Code>_k)
eval <New Field> = unit(<Field>, currency_<ISO-4217 Code>_m)
eval <New Field> = unit(<Field>, currency_<ISO-4217 Code>_b)接尾辞_k、_mおよび_bを使用して、通貨をそれぞれ数千、数百万または数十億単位で示します。通貨コードの完全なリストは、「ISO標準」を参照してください。
NLS_Territory |
Currency |
|---|---|
| アフガニスタン | AFN |
| アルバニア | ALL |
| ALGERIA | DZD |
| アメリカ | YEN |
| アンゴラ | AOA |
| アンティグア・バーブーダ | XCD |
| ARGENTINA | ARS |
| アルメニア | AMD |
| アルバ | AWG |
| AUSTRALIA | AUD |
| AUSTRIA | EUR |
| アゼルバイジャン | AZN |
| バハマ | BSD |
| BAHRAIN | BHD |
| BANGLADESH | BDT |
| バルバドス | BBD |
| ベラルーシ | BYN |
| BELGIUM | EUR |
| ベリーズ | BZD |
| バミューダ | BMD |
| ボリビア | BOB |
| ボスニアヘルツェゴビナ | BAM |
| ボツワナ | BWP |
| BRAZIL | BRL |
| BULGARIA | BGN |
| カンボジア | KHR |
| カメルーン | XAF |
| CANADA | CAD |
| ケイマン諸島 | KYD |
| CHILE | CLP |
| CHINA | CNY |
| コロンビア | COP |
| コンゴ(ブラザビル) | XAF |
| コンゴ・キンシャサ | CDF |
| COSTA RICA | CRC |
| CROATIA | HRK |
| キュラソー | ANG |
| キプロス | EUR |
| CZECH REPUBLIC | CZK |
| DENMARK | DKK |
| ジブチ | DJF |
| ドミニカ | XCD |
| ドミニカ共和国 | DOP |
| エクアドル | YEN |
| EGYPT | EGP |
| EL SALVADOR | SVC |
| ESTONIA | EUR |
| エチオピア | ETB |
| FINLAND | EUR |
| FRANCE | EUR |
| FYR MACEDONIA | MKD |
| ガボン | XAF |
| ジョージア | GEL |
| GERMANY | EUR |
| ガーナ | GHS |
| GREECE | EUR |
| グレナダ | XCD |
| GUATEMALA | GTQ |
| ガイアナ | GYD |
| ハイチ | HTG |
| HONDURAS | HNL |
| HONG KONG | HKD |
| HUNGARY | HUF |
| ICELAND | ISK |
| INDIA | INR |
| INDONESIA | IDR |
| イラン | IRR |
| IRAQ | IQD |
| IRELAND | EUR |
| ISRAEL | ILS |
| ITALY | EUR |
| コートジボワール | XOF |
| ジャマイカ | JMD |
| JAPAN | JPY |
| JORDAN | JOD |
| KAZAKHSTAN | KZT |
| ケニア | KES |
| KOREA | KRW |
| KUWAIT | KWD |
| KYRGYZSTAN | KGS |
| LAOS | LAK |
| LATVIA | EUR |
| レバノン | LBP |
| LIBYA | LYD |
| リヒテンシュタイン | CHF |
| リトアニア | EUR |
| LUXEMBOURG | EUR |
| マカオ | MOP |
| マラウイ | MWK |
| MALAYSIA | MYR |
| モルディブ | MVR |
| マルタ | EUR |
| モーリタ州 | MRU |
| モーリシャス | MUR |
| MEXICO | MXN |
| モルドバ | MDL |
| モンテネグロ | EUR |
| MOROCCO | MAD |
| モザンビーク | MZN |
| ミャンマー | MMK |
| ナミビア | NAD |
| ネパール | NPR |
| NEW ZEALAND | NZD |
| ニカラグア | 新情報管理機関 |
| ナイジェリア | NGN |
| NORWAY | NOK |
| オマーン | OMR |
| パキスタン | PKR |
| パナマ | PAB |
| パラグアイ | PYG |
| PERU | ペン |
| PHILIPPINES | PHP |
| POLAND | PLN |
| PORTUGAL | EUR |
| PUERTO RICO | YEN |
| QATAR | QAR |
| ROMANIA | ロン |
| RUSSIA | ラブ |
| セントクリストファー・ネイビス | XCD |
| セントルチア | XCD |
| SAUDI ARABIA | SAR |
| セネガル | XOF |
| SERBIA | RSD |
| シエラレオネ | SLL |
| SINGAPORE | SGD |
| SLOVAKIA | EUR |
| SLOVENIA | EUR |
| ソマリア | SOS |
| SOUTH AFRICA | ZAR |
| 南スーダンス | SSP |
| SPAIN | EUR |
| スリランカ | LKR |
| スーダン | SDG |
| スリナム | SRD |
| スワジランド | SZL |
| SWEDEN | SEK |
| SWITZERLAND | CHF |
| SYRIA | SYP |
| TAIWAN | TWD |
| タンザニア | TZS |
| THAILAND | THB |
| THE NETHERLANDS | EUR |
| トリニダード・トバゴー | TTD |
| TUNISIA | TND |
| TURKEY | TRY |
| トルクメニスタン | TMT |
| UGANDA | UGX |
| UKRAINE | UAH |
| UNITED ARAB EMIRATES | AED |
| UNITED KINGDOM | GBP |
| ウルグアイ | UYU |
| UZBEKISTAN | UZS |
| VENEZUELA | VES |
| VIETNAM | VND |
| YEMEN | YER |
| ザンビア | ZMW |
| ジンバブエ | ZWL |
indexofファンクションの詳細
index0f関数の構文は次のとおりです。
indexof (String, String [,int])indexof (String、 String [、start_pos]): 索引数は0で始まり、start_pos (指定されている場合)から始まる一致のインデックスを返し、一致しない場合は-1を返します。
次の例は、フィールドnewFieldの値をuri文字列内の.comの位置に設定します。
*|eval newField = indexOf(uri, '.com')ユースケース: OCI監査ログの「パス」フィールドからAPIパスの関連部分を抽出します
「パス」フィールドには、/apis/coordination.k8s.io/v1/namespaces/default/leases/oracle.com-ociのような値が含まれます。
前述のフィールドから値coordination.k8sを抽出するには、次のステップに従います。
indexOf()関数を使用して、1番目と2番目の/の位置を検索します。- 3番目の
/の位置を確認します。 substr()関数を使用して、2番目の/(3番目の/まで)の後に値を抽出します。
'Log Source' = 'OCI Audit Logs'
| eval firstPos = indexOf(Path, '/')
| eval secondPos = indexOf(Path, '/', firstPos + 1)
| eval API = substr(Path, secondPos + 1, indexOf(Path, '/', secondPos + 1))
| link Path, API出力例:

lastindexofファンクションの詳細
lastindexof関数の構文は次のとおりです。
lastindexof(String, String, int)lastindexof (String、 String [、 end_pos]): 索引数は0で始まり、end_pos (指定されている場合)の前の最後の部分文字列の索引を返し、一致しない場合は-1を返します。end_pos引数はオプションです。
lastindexofファンクションの使用例を次に示します。
*|eval n = lastindexof(uri, '.com')ユースケース: OCI監査ログの「タイプ」フィールドから「エリア」を抽出します
「タイプ」フィールドには、com.oraclecloud.computeApi.GetInstanceのような値が含まれます。
前述の値からcomputeAPIを抽出するには、次のスキームを使用します。
lastIndexOf()を使用して、最後の.の位置を特定します。- このオフセットから、別の
lastIndexOf()を使用して、検索元のオフセットを指定して、前の.の位置を特定します。 substr()を使用して、これら2つの位置間の値を抽出します。
'Log Source' = 'OCI Audit Logs'
| eval lastDot = lastIndexOf(Type, '.')
| eval prevDot = lastIndexOf(Type, '.', lastDot - 1)
| eval Area = substr(Type, prevDot + 1, lastDot)
| link Type, Area出力例:

replaceファンクションの詳細
replace関数の構文は次のとおりです。
replace(String, String, String, String, String, ..)replaceは、単一の関数で複数の置換をサポートします。replaceファンクションの使用例を次に示します。
-
*|eval newField = replace('aabbcc', 'bb', 'xx') -
*|eval newField = replace('aabbcc', 'bb', 'xx', 'cc', 'yy') -
単一の
replaceファンクションでの複数の置換アクションの例:* | eval CopiedURL = 'https://cloud.oracle.com/loganalytics/explorer?viz=<VIZ>&encodedQuery=<QUERY>&startTime=<START_TIME>&endTime=<END_TIME>®ion=us-phoenix-1&tenant=testtenant'| eval Query = encode64('* | stats count as "Log Records" by "Log Source"') | eval 'Start Epoch' = toString(toNumber(toDate(dateRelative(30day)))) | eval 'End Epoch' = toString(toNumber(now())) | eval Viz = pie | eval URL = replace(CopiedURL, '<VIZ>', Viz, '<QUERY>', Query, '<START_TIME>', 'Start Epoch', '<END_TIME>', 'End Epoch')
substrファンクションの詳細
substr関数の構文は次のとおりです。
substr(String, int [, int])substr(String、 start_pos、 end_pos - 1): 索引数はstart_posで始まり、end_pos - 1で終わります。
次の例では、newFieldはaabbccのサブ文字列で、開始索引(包含)は2、終了索引(除外)は4です。文字列の場合、索引数は0で始まることに注意してください。したがって、結果の部分文字列はbbです。
*|eval newField = substr('aabbcc', 2, 4)substr関数が使用されるユースケースについては、indexof関数の詳細およびlastindexof関数の詳細を参照してください。
urlファンクションの詳細
urlファンクションの構文:
url(String, Name, Parameter)NameとParameterの値はオプションです。
- String: これは、URLまたは事前定義された短縮名の1つです。例:
eval Link = url('https://www.oracle.com') - Name: URLのオプション名。例:
eval Link = url('https://www.oracle.com', 'Oracle Home Page') - Parameter: Stringにショートカットを使用する場合のオプション・パラメータ。例:
eval Link = url('tech', 'Search Oracle', 'ORA-600')
urlファンクションの使用例を次に示します。
-
* | stats latest(Status) as Status | eval ‘HTTP Status Code’ = url(‘https://www.google.com/search?q=http+code+’, Status, Status) -
Status != null | eval 'HTTP Status Code' = url('https://www.google.com/search?q=http+code+', Status, Status) | stats count by Status
linkコマンドの後にurl関数を使用する例:
-
* | link status | eval ‘HTTP Status Code’ = url(‘https://www.google.com/search?q=http+code+’, Status, Status) -
* | link Type | stats latest(Status) as Status | eval ‘HTTP Status Code’ = url(‘[https://www.google.com/search?q=http+code+]’, Status, Status)
Oracle定義のurlショートカット
次のOracle定義のショートカットは、evalコマンドのurl関数で使用できます。
| ショートカット | URLと説明 | 例 |
|---|---|---|
|
ora 検索:oracle |
https://www.google.com/search?q=site:oracle.com%20指定した文字列のすべての |
|
|
技術 オラクル・テクノロジー |
https://community.oracle.com/tech/search?query=Oracleテクノロジ・フォーラムを検索するためのリンクの生成 |
|
|
モスク オラクルのモスクワ |
https://community.oracle.com/mosc/search?query=My Oracle Supportフォーラムを検索するためのリンクを生成します。 |
|
| グーグル | https://www.google.com/search?q=Googleを使用して検索するリンクを生成 |
|
| bing | https://www.bing.com/search?q=Bingを使用した検索へのリンクの生成 |
|
|
ddg カモノハシ |
https://duckduckgo.com/?q=DuckDuckGoを使用して検索するリンクを生成します |
|
|
so スタックオーバーフロー |
https://stackoverflow.com/search?q=StackOverflowで検索するリンクを生成します。 |
|
|
CVE |
https://www.cve.org/CVERecord?id=指定されたCVE IDのリンクを生成します |
|