1

本番のRailsログファイルを見て、すべてのPOSTリクエストで送信されたパラメーターを見つけようとしています。現在、私は次のものを使用しています。

grep 'Started POST.*\/[fr]' log/production.log

これは、POSTが発生したときに表示されますが、パラメーターは表示されません。私がしたいのは、次のようなことをすることです。

  1. 上記の正規表現に遭遇したときに、行をsedのホールドバッファに保存します
  2. 「パラメータ:」が検出されたときに、ホールドバッファの内容と現在の行を出力します。
4

2 に答える 2

2

私が理解しているように、正規表現と次の行で行を表示する必要があります。grepそれ自体を行うことができます:

grep -A1 'Started POST.*\/[fr]' log/production.log

sedそれは次のようになります:

sed -n '/Started POST.*\/[fr]/{N;p}' log/production.log

または、次のすべての行に「パラメーター」が含まれているとは限らず、それらだけが必要な場合:

sed -n '/Started POST.*\/[fr]/{N;/Parameters/p}' log/production.log
于 2012-07-02T20:27:55.420 に答える