次のような単純なjsonファイルがあるとしましょう
{
"log": {
"host": "blah",
"severity": "INFO",
"system": "1"
}
}
私はApache Camelを使用しています.jsonファイルを処理してルーティングするのはSpring XMLです。私のルーティングコードは次のようになります。
<route>
<from uri="file:/TESTFOLDER/input"/>
<choice>
<when>
<jsonpath>$.log?(@.severity == 'WARNING')</jsonpath>
<to uri="smtp://(smtpinfo...not important)"/>
</when>
<otherwise>
<to uri="file:/TESTFOLDER/output"/>
</otherwise>
</choice>
</route>
私が本当に混乱している部分は、JSONPath 式です。上記の式は、要素のリストをソートしようとしていない場合の例を見つけるのが難しいため、構文的にも正しくありません。私の目標は、ログの重大度が「警告」の場合にのみメールを送信することですが、表現が思いつきません。