ログ解析専用のC++ライブラリがありますか? Apacheログ用MergeLogやウェブ解析用libcurlと似ていますか?ログ解析のためのC++ライブラリ
答えて
適切なライブラリが見つからない限り、私の助言は、スタンドアロンのレクサーを使用することです。
- flex + bisonの代わりにflex alone(C/C++)を使用してください。
- ocamllex + ocamlyaccの代わりにocamllex alone(OCaml)を使用してください。
- Ragel(C/C++/Objective C/D/Java/Ruby)。
このようにして、文法(ログファイルには無意味です)を定義する必要がなくなり、暗い場所で見られる恐ろしいフランケンシュタインの正規表現モンスターを回避できます。
ログ解析ライブラリは認識していません。 Boost.Spirit、ANTLR、またはlex/yaccのような汎用パーサジェネレータを常に使用することができます。そのアプローチはおそらくもっと仕事になるでしょうが、非常に柔軟です。
パーサージェネレーターが過剰である場合は、ログファイルに多くの正規表現を追加します。
ありがとうございました。Josh、 yacc/lexはプログラマーにやや重いようです。 –
パーサーパーツをスキップし、スタンドアロンのレクサーを使用できます。これは、構造化されていない正規表現の束よりもはるかに便利で、完全なパーサーよりも簡単です。 – bltxd
@stack_zen:Spirit、ANTLR、およびlex/yaccは、すべて同じロールを多かれ少なかれ満たします。スピリットとANTLRはもっとモダンで、おそらくもっと学びやすくなります。あなたが言ったように、それらのすべては少し重くなることができますが、彼らは強力なツールです。 –
- 1. IPのためのPythonログ解析
- 2. .NetのためのRSS/Atom解析ライブラリ
- 3. C++センチメント解析ライブラリ
- 4. C:設定ファイルとコマンドラインを解析するためのライブラリ
- 5. Laravel5のログ解析のログ
- 6. C#オーディオファイル解析API /ライブラリ?
- 7. 数式解析ライブラリC++
- 8. ログ解析のパターンマッチング
- 9. Skypeログの解析
- 10. ネットワークプロトコル解析のためのC++メソッド
- 11. QRadar、解析ログ
- 12. 解析ログ
- 13. 解析ログ列
- 14. 画像データ取得と時間ピクセル解析のためのC++ライブラリ
- 15. おおよその日付を解析するためのCライブラリ
- 16. 表示するApacheログを解析するためのアドバイス
- 17. 解析のCloudWatchのログ
- 18. 解析ClamAVのログのMySQL
- 19. nginxログのタイムスタンプの解析
- 20. ログ解析ツール(フィルタリング/グループ化/マルチスレッド解析)
- 21. JSPの解析と操作のためのライブラリ
- 22. HSQLDBログ解析の説明
- 23. goaccessログ解析のログフォーマット
- 24. Pythonでのログ解析
- 25. getoptに似たC#のコマンドラインオプションのライブラリ/戦略の解析?
- 26. SVNログ解析ツール
- 27. オープンソースRSS/Atomを解析するためのPHP5互換ライブラリ
- 28. 論理式を解析するためのJavaライブラリ
- 29. .Netソースコードを解析するためのライブラリ?
- 30. Bashスクリプトを解析するためのHaskellライブラリ?
ええと、boost :: regexと呼ばれています。 –
マキシムの提案が本当にこの場合に十分であるかもしれません。 Boost.Xpressiveはよかったですが、 http://www.boost.org/doc/libs/1_36_0/doc/html/xpressive.html –