問題タブ [python-daemon]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
0 に答える
164 参照

python - 1 つのログ ファイルから特定のコンテンツを読み取り、別のログ ファイルに書き込むための Python デーモン

バックグラウンドで実行されている python デーモンを作成する必要があります。このデーモンは、1 つのログ ファイル (a.log を考慮) からコンテンツを読み取り、別のファイル (b.log を考慮) に書き込む必要があります。

つまり、ファイル (a.log) が特定のフレーズを取得するたびに、対応するエントリを別のファイル (b.log) に作成する必要があります。

私はそれが明確であることを願っています、誰でも私を助けてください。

0 投票する
1 に答える
3998 参照

python-3.4 - Python3 デーモン ライブラリ

Python3、特にデーモン ライブラリを学習しています。デーモンを 2 つの可能な引数 (start と stop) で呼び出す必要があります。

これまでのところ、私はこのコードを持っています:

それは機能していますが、正しい方法でやっているのだろうか。

特に、PID を手動で保存する必要があるのはなぜですか。自動作成されたファイルにまだ含まれていないのはなぜですか :

またはロックファイル?

0 投票する
4 に答える
22663 参照

python - スーパーバイザーで Python スクリプトを実行する

0 投票する
2 に答える
11910 参照

python - バックグラウンドで Python HTTPServer を実行し、スクリプトの実行を続行する

"".serve_forever() メソッドを実行した後、オーバーロードされたカスタマイズされた BaseHTTPServer インスタンスをバックグラウンドで実行する方法を見つけようとしています。

通常、メソッドを実行すると、キーボード割り込みを実行するまでハングしますが、スクリプトの実行を継続しながら、バックグラウンドでリクエストを処理したいと考えています。助けてください!

0 投票する
3 に答える
972 参照

python - Python デーモンがエラーの出力を表示しない

Python でデーモンを作成するにはどうすればよいですか?を読みました。また、このトピック、非常に単純なデーモンを作成しようとしました:

動作python script.pyし、すぐに端末に戻ります(これは予想される動作です)。しかし、a.txt書かれたことはなく、エラーメッセージも表示されません。この単純なことの何が問題になっていdaemonますか?

0 投票する
3 に答える
435 参照

python - メイン プログラムの終了時に、thread.setDaemon(True) を使用して子スレッドを終了できません

ファイル 1 sravi.py

メインプログラム/ファイル trial.py

メイン スレッドが終了したら "Hi" の出力を停止したいのですが、HI の出力は続行されます。x.setDaemon(True) と x.Daemon=True を試しましたが、うまくいきません。以前にそのような質問があったことは理解していますが、解決策がわかりません

-------o/p-------

こんにちはを印刷し続けます

0 投票する
1 に答える
649 参照

python - python-daemon が start 関数を呼び出さない

この例に従ってpython デーモンを実装しましたが、多少は機能しているように見えますが、再構成関数のみが呼び出されます。

これは私が使用しているコードです:

これは、マネージャー クラスのコードです。

そして、ログには次のみが表示されます。

なぜかprogram_start()呼ばれない。 program_configure()Pythonファイルが読み込まれるたびに呼び出されるので、それだけですが、なぜprogram_start()呼び出されないのですか?

次のように入力してデーモンを起動しますsudo service station.sh start。スクリプトを実行する行は次のとおりです。

編集:少し読んだ後、プログラムがおそらく終了するかハングインすることに気付きましたcontext.__enter__()(withそれを呼び出します)。しかし、私は何がこれを引き起こしているのか見当がつかない

0 投票する
0 に答える
343 参照

python - python-daemon 内でコードが失敗した理由を調べるには?

これは私がデーモンを実行する方法です:

残念ながら、ログに記録されるのはこれだけです。

Apr 3 22:33:06 mybot デーモン化する前。

クラッシュしているようには見えず、 で確認できますps aux | grep python。しかし、コードは想定どおりに機能しません。エラーをスローしてキャプチャし、何かが正しくないかどうかを確認するにはどうすればよいですか?

0 投票する
1 に答える
85 参照

python - デーモンとしてデタッチされたときのファイル アクセスで非同期コアで例外が発生する

Python 2.7 の asynchat モジュールとメールボックス モジュールを使用して電子メール サーバーを作成しました。フォアグラウンドで実行すると、すべて正常に動作し、長期間のテストでも安定しています。ただし、デーモンとしてデタッチされている場合、メールボックスへのアクセスにより、asyncore.loop() で不正なファイル記述子の例外が発生します。ファイルアクセスのみが問題です。ソケット I/O は引き続き問題なく動作します。

__init__()ファイルがfound_terminator() 関数で開かれるか後で開かれるかは問題ではないようです。

Schroeder の ActiveState レシピ 278731 のコードを使用してプロセスを切り離していますが、別のデーモン モジュールを使用しても症状は変わりません。

フローを示すための擬似コードを次に示します。

物事が爆発したときのstrace出力は次のとおりです。

省略された部分には、mmap2 を使用していくつかのファイル記述子を開いたり閉じたりする parser.py および feedparser.py モジュールのロードが含まれます。

したがって、電子メール ファイルの fd は閉じられますが、その直後にその fd が選択リストに表示されます。fd が asyncore チャネル マップにどのように追加されるのか、または close() の後にまだ存在する理由は明確ではありません。fd のどれが現在無効であるかは明確ではありません。また、シェル プロセスで実行しているときにこれが発生しない理由も明らかではありません。

スレッドを使用していた場合、これが発生していることを確認できますが、インポートされたモジュールをざっと調べたところ、別のスレッドまたはプロセスを起動していることを示すものは何も表示されません。また、nobody にドロップするのではなく、root として実行し続けても、動作は変わりません。

確かに、asyncore およびメールボックス モジュールは他のデーモンで使用されています。明らかな何かが欠けているに違いないと感じています。