次のようなログ ファイルがあります。
Client connected with ID 8127641241
< multiple lines of unimportant log here>
Client not responding
Total duration: 154.23583
Sent: 14
Received: 9732
Client lost
Client connected with ID 2521598735
< multiple lines of unimportant log here>
Client not responding
Total duration: 12.33792
Sent: 2874
Received: 1244
Client lost
Client connected with ID 1234
ログには、 で始まり で終わるこれらのブロックが多数含まれていますClient lost
。それらが混同されることはありません (一度に 1 つのクライアントのみ)。
このファイルを解析して、次のような統計を生成するにはどうすればよいですか。
私は主に、フォーマットではなく、解析プロセスについて尋ねています。
Client connected
すべての行をループして、行を見つけたときにフラグを設定し、ID を変数に保存できると思います。次に、行をgrepし、行が見つかるまで値を保存しますClient lost
。これは良いアプローチですか?より良いものはありますか?