参考
1「Linux straceコマンド(詳細解説).txt」Sina電子書籍がダウンロードできます
2man strace
基本的に普遍的で完全な使用法:
strace -o Output.txt -T -tt -e trace=all -p 28979
上記の意味は、28979 プロセスのすべてのシステム コール (-e trace=all) を追跡し、システム コールに費やされた時間と開始時間 (および表示) をカウントすることです。視覚的な時、分、秒の形式で記録し、最後に記録結果をoutput.txtファイルに保存します。
覚えておくべきいくつかの使用法
1) strace -p pid はバックグラウンドプロセスを追跡できます
2) strace -o filename は追跡結果をファイルに出力します
3) strace -T は各システムのコストを記録します呼び出し時間により、どのシステムコールに時間がかかっているかがわかります
4) strace -t (または -tt) は、各システムコールが発生した時間を記録します(時、分、秒の形式)
5) strace -s 1024 システムコールを表示する場合パラメータ、文字列表示の長さのデフォルトは 32 です。文字列パラメータが非常に長い場合、多くの情報を表示できません。
6) strace -e trace=nanosleep は、関連するシステムコール情報のみを記録します。
-e trace=network // ネットワーク API に関連するシステム コールのみを記録します
-e trace=file // ファイル名に関連するシステム コールのみを記録します
-e trace=desc // ファイル ハンドルに関連するシステム コールのみを記録します 他にも呼び出しがあります
プロセス、ipc、シグナルなどを含む。
strace を介してプロセスの関連する開いているすべてのファイルを表示する古典的なトラブルシューティング プロセスは、「Linux strace コマンド (詳細な説明).txt」を参照してください。Sina 電子ブックをダウンロードできます
開発プログラムに強力なツールが付属していない場合は、開発効率は非常に低くなり、問題が発生したとしても、どうやって始めればよいのか分かりません。Linux の強力なデバッグ ツールである strace を学習し始めてください。
strace
1) 同様です。 Windows の processexp.exe に追加します
システムコールを監視できます
2) Windows の depand ツールと同様に、プログラムの依存ライブラリを確認できます
Linux の ldd よりも強力です。使用法
クリックしてダウンロード
ケース: strace が不明なログの解決に役立ちました ファイルがどこに出力されるかの問題
strace を使用してサーバーを追跡します /usr/bin/strace -p pid -o out。ファイル
次に、クライアントを実行し、strace を終了し、.file をチェックアウトして、write および open システム コールを検索します
http://www.bkjia.com/PHPjc/327285.html