- 新着としてマーク
- ブックマーク
- 購読
- ミュート
- RSS フィードを購読する
- ハイライト
- 印刷
- 不適切なコンテンツを報告
12-11-2022 09:25 PM
イベントのDescription内の『発生ノード(TES)』というラベルの後の文字列"test_node_name"を抽出し、アラートレコードのノードにセットするよう、以下のコミュニティの情報を参考に、イベントルールのアラート出力の変換と構成でDescriptionに対して以下の正規表現を記述しました。
https://www.servicenow.com/community/itom-forum/event-rules-regex-and-groups/m-p/948775
事前にregex 101で確認して抽出できることを確認したのですが、イベントルールのアラート出力の変換と構成で記述してもunknownとなってしまいます。
これに関してご支援をお願いできないでしょうか
記述した正規表現
発生ノード:\(TES\)\K([^\n]*)
■Descriptionの内容
=============================
テストコメント3:
発生ノード:(TES)test_node_name
テストコメント4:
=============================
よろしくお願いいたします。
解決済! 解決策の投稿を見る。
- 新着としてマーク
- ブックマーク
- 購読
- ミュート
- RSS フィードを購読する
- ハイライト
- 印刷
- 不適切なコンテンツを報告
12-13-2022 05:55 PM
iwai様
ご教示頂きありがとうございました。
またお忙しい中動作確認までしてくださいありがとうございます。
教えて頂きました正規表現を使用したところ正常に動作しました。
大変助かりました、ありがとうございます。
- 新着としてマーク
- ブックマーク
- 購読
- ミュート
- RSS フィードを購読する
- ハイライト
- 印刷
- 不適切なコンテンツを報告
12-12-2022 04:46 PM
その正規表現の「\K」は、正規表現として定義を見たことがないです。
動作を検証したわけではないですが、例えば以下のように書き換えてはどうでしょうか。
発生ノード:\(TES\)([^\n]*).*
EventRuleの正規表現は全体が一致する必要があるので 最後に「.*」を付け加えてみました。
- 新着としてマーク
- ブックマーク
- 購読
- ミュート
- RSS フィードを購読する
- ハイライト
- 印刷
- 不適切なコンテンツを報告
12-12-2022 09:31 PM
iwai様
1点情報を追加させて頂きます。
Descriptionの先頭行に対象の文字列を設定すると値が想定通りに抽出できることが確認できました。
[イベント]
descriptionに以下文字列を設定
errornode:(TES)test_node_name
テストコメント3:
テストコメント4:
[]
[アラート]
- 新着としてマーク
- ブックマーク
- 購読
- ミュート
- RSS フィードを購読する
- ハイライト
- 印刷
- 不適切なコンテンツを報告
12-13-2022 12:31 AM
iwai 様
ご支援をして頂きありがとうございました。
前の投稿の前に確認結果を投稿したのですが、反映がされていませんでした。
ご教示頂きました正規表現を参考に、イベントルールのDescriptionに正規表現を設定をしてみましたが、値が取得できずunknownとなりました。
正規表現:errornode:\(TES\)([^\n]*).*
①イベントルール
②イベント
Descriptionに以下値を設定
テストコメント3:
errornode:(TES)test_node_name
テストコメント4:
④処理結果(アラート)
正常に値が抽出できずunknownとなりました。
⑤regex101での検証
https://regex101.com/r/kWPHIB/1
正規表現は正しく動作していることは確認できました。
- 新着としてマーク
- ブックマーク
- 購読
- ミュート
- RSS フィードを購読する
- ハイライト
- 印刷
- 不適切なコンテンツを報告
12-13-2022 06:05 AM
最初の例が良くなかったです。Description全体が正規表現で一致しないといけないので、errornodeだけ取得で良いなら以下のようになります。
.*errornode:\(TES\)([^\n]*).*
前後に「.*」を追加することで必ず全体が選択されます。
実際にEventRuleを設定して、Event Recordを作成してAlertで正しく値が設定されていることを確認できました。