
私はプロセス/ユーザーリソースの利用に関するデータを保存するUbuntu用のシステム統計ツールを開発したいと思います。私はこのデータを私のログファイルに保存します(たとえば、プロセスのデータ収集用)。 Cプログラミング言語を使用してログファイルを解析する/var/log/<process>.log
APIがあるかどうかを知りたいです。procfs
これらのログファイルには、ユーザー名、プロセスID、CPU%、MEM%、I / Oなどが含まれます。
答え1
どのAPIが必要ですか?ログファイルはテキストです。役に立つと思われるテキスト解析ユーティリティ、スクリプト、または言語を使用します。
個人的に私が選択する言語はなのにawk
、それは慣れているからだ。時には簡単grep
でsed
十分な時もあります。
しかし、実際にはすべてがログで何をしたいかによって異なります。可能性は無限です。
答え2
あなたがあなたの私自身ログファイルも独自のAPIを作成する必要があると思います。
答え3
あなたのニーズとスキルに応じて選択できるさまざまなオプションがあります。
Perl - テキスト操作に理想的なスクリプト言語です。 PerlはしばしばSEDとAWKを使用します。
Awk - シェルスクリプトで簡単に使用できます。 awkはsedよりも少し複雑な構文を使用します(しかしまだ単純です)。 awkはsedよりはるかに高速です。
Sed - awkと同様に、sedもシェルスクリプトで使用できます。 Sedはほとんどの人が学びやすいです。
Python - 洗練されたロギングシステムが必要で、迅速な監査システムが必要な場合は、Pythonを試してください。しかし、Pythonがわからない場合は、学習に時間がかかります。
答え4
統合を検討することもできます。RRDツール)をあなたのワークフローに追加します。すでにあなたが探していることをたくさんやっているようです。オンラインにはよく文書化された例がたくさんあるので、始めるのはそれほど難しくありません。