Mac 印刷ジョブが作成/完了されるたびに、そのジョブに関する情報 (印刷されたもの、ページ、部数など) を知る必要があります。
これまでに思いついた最善の方法は、/var/spool/cups/ で kqueue() を使用し、作成された c##### ファイルを解析することですが、もっと良い方法があるかどうか疑問に思っています仕方。
この情報を収集して (たとえばデータベースに) 格納する CUPS パイプラインに入れることができるフィルターを作成することを考えます。その後、標準のデータベース アクセス メカニズムを使用してデータベースにアクセスし、情報を取得できます。基本的に、フィルターは、CUPS から渡された多数のパラメーターを取得し、stdin で入力を読み取り、それを stdout に書き込む必要がある単なるコマンドライン プログラムです。詳細については、http://www.cups.org/documentation.php/api-filter.html を参照してください。
page_logファイルが提供するものを見たことがありますか? その形式の詳細を提供する man ページがあります。最近のバージョンの CUPS では、そのファイルに記録される情報の量を構成できます。