問題タブ [watchdog]
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.
javascript - クロスフレーム クロスサイト スクリプティング - Web ページのリローダー/ウォッチドッグの作成
設定:
リモート測定ステーションがあり、集中収集/処理/提示サーバー (Web サーバーを使用) があり、収集されたデータを顧客に表示する観測ステーションがあります。
これらの観測ステーションは、中央サーバーからそれぞれ 1 つの特定の Web ページを表示するキオスク モードで動作する Web ブラウザーを備えた、最低限の単純な組み込みコンピューターで構成されています。この Web ページは、特定の測定ステーションの最新の測定値を表示する AJAX で更新されます。固定モニターに接続されたこれらのステーションは、何年もほとんどメンテナンスフリーで稼働するはずです。
これでほとんどの問題は解決しましたが、問題は次のとおりです。Web サーバーに障害が発生した場合はどうなるでしょうか。ブラウザは、「到達不能」、「404」、「許可が拒否されました」、「500」、またはその時点でサーバーが取ったあらゆるモードの障害を読み込み、誰かが観測ステーションを手動で再起動するまでそこにとどまります。
私が思いついた一般的な解決策は、ブラウザーのホームページを監視対象のページではなく、常に利用可能なローカル HTML ファイルに設定することです。このファイルは、リモート ページが読み込まれて正しく更新されているかどうかを定期的にチェックし、失敗した場合は再読み込みします。何らかの理由で実行する。
問題:
問題はクロスフレームスクリプティングにあります。ターゲットWebページは、フレーム、iframe、テキスト/HTMLタイプのオブジェクト、またはローカルの「コンテナ」ファイルを削除/無効にせずに表示する他の方法としてロードする必要があると思います. 数年前にクロス フレーム スクリプティング ページを作成しましたが、セキュリティ対策を回避するのは簡単ではありませんでした。それ以来、セキュリティは強化されたに違いありません。
そのため、リモート サーバーからロードされたページには、すべてがうまくいった場合は定期的に (setInterval で) 起動される JavaScript が含まれており、何かが壊れている場合は起動されません。このシグナルがコンテナ フレームに定期的に到着すると、タイムアウトがリセットされ、他のアクションは実行されなくなります。
シグナルが届かない場合は、タイムアウトの期限が切れると、サーバーが修正されて適切なコンテンツがロードされるまで、コンテナーはロードされた Web ページの定期的な更新を開始し、そのことをローダーに通知します。
特定の関数がトリガーされるたびに、リモート ページが file:// URL からロードされたローカル (コンテナー) ページに "生きている" (たとえば、変数を設定する) ことを知らせるにはどうすればよいですか?
python - Pythonでウォッチドッグタイマーを実装するには?
Python で単純なウォッチドッグ タイマーを実装したいと思います。使用例は 2 つあります。
x
ウォッチドッグは、関数が秒以上実行されないようにします- ウォッチドッグは、特定の定期的に実行される関数が実際に少なくとも毎秒実行されることを保証し
y
ます
それ、どうやったら出来るの?
c++ - 単一のセットアップと展開を使用して Windows サービスとコンソール アプリケーションをインストールする
C++でバックグラウンド アプリとして機能するコンソール アプリケーションを作成しました。アプリがクラッシュした場合に自動的に起動するように、Windows サービスを介してこのアプリケーションを実行しようとしています。
私ができないことは、 をトリガーできる Windows サービスを作成することxxx.exe
です。
この Windows サービスとバックグラウンド アプリケーションをインストール用の単一のセットアップ ファイルとして作成するにはどうすればよいですか?
linux - Uboot と Linux でウォッチドッグを使用する MPC8xx
uboot と Linux 3.2 で動作する powerpc MPC875 CPU を搭載した組み込みプラットフォームがあります。このCPUのウォッチドッグ機能を使いたいです。私の問題は、Linux がウォッチドッグ ドライバーを起動する前にウォッチドッグがタイムアウトしたことです。
私の CPU クロック周波数は 131MHz で、ウォッチドッグの最大タイムアウトは ~1 秒です (プリスケーラを使用)。ウォッチドッグは、ハード リセットが有効になった後にデフォルトで設定され、1 回だけ設定できるため、uboot によって設定され、定期的に開始されます。uboot は、Linux カーネルを開始する直前にウォッチドッグを開始します。
その場合、カーネルには、ウォッチドッグがタイムアウトする前に、uboot を引き継いで犬を蹴るウォッチドッグ ドライバーをロードする時間がありません!
Linux のウォッチドッグ ドライバーは、以前にロードできるモジュールとしてではなく、コンパイルされています。フラット デバイス ツリーから検出された後にロードされます。
ウォッチドッグがタイムアウトするのを避けるために、Linux ウォッチドッグ ドライバを以前に起動する他の方法はありますか?
助けてくれてありがとう
ブライス
ruby-on-rails - Rails3のFileWatchdogメカニズム? Rails 3でディレクトリ内のファイルの変更を監視するには?
Ruby と Rails は初めてです。
私のアプリでは、ファイルを監視する必要があります。そのファイルが変更された場合、コードまたは JavaScript を実行して何かを行う必要があります。
助けてください、
python-3.x - Python 3.3 で通知を行うには?
ディレクトリ構造に変更があったときに通知が必要なpythonアプリに取り組んでいます。たとえば、誰かがファイルをフォルダにドロップしたり、ファイル名を変更したりします。Watchdog を読んでみると、私が Python 3.3 で作業していて、Watchdog が更新されていないように見えることを除けば、私が必要としている機能だけを実行しているように見えます。以下は、ウォッチドッグ サンプル ファイルからのエラー ダンプの末尾です。
Pyinotify をインストールしようとしましたが、Win64 では使用できないというエラーが表示されました。Python 3.3 と Win64 で通知を受け取るにはどうすればよいですか?
arm - アームウォッチドッグの割り込み遅延
最近、ウォッチドッグを使用して 20us ごとに割り込みを生成する Linux モジュールを作成しました。グローバル タイマーを使用して、2 つの割り込みの間隔が 20us であるかどうかをテストします。しかし、結果は 20us を超えています。したがって、エラーが十分に大きい場合は、割り込み関数のウォッチドッグ カウンターの値を変更してエラーを調整します。エラーを調整するコードを追加した後、結果はほとんどの割り込みで以前よりも良くなりましたが、2 つの割り込みの間にはまだいくつかの大きなエラーが存在し、エラーは 20us よりもはるかに大きくなっています。
私の質問を読んでいただきありがとうございます。できるだけ早く解決できることを願っています。
これは割り込みハンドラ コードです。
これは、ウォッチドッグとグローバルタイマーを開始するための私のコードです
python - ウォッチドッグを使用したpy2app ImportError
py2app を使用して、Mac 上の Python 2.7 で作成した小さな Python アプリをバンドルしようとしています。私のアプリでは、メイン ファイルの先頭にインポートされたWatchdog ライブラリを使用します。
私のプログラムを実行すると、これらの import ステートメントは正常に機能し、プログラムは期待どおりに機能します。ただし、py2app を実行した後、バンドルされたアプリケーションを起動すると、次のエラーが生成されます。
observers
最初は、モジュールがネストされていることと関係があると思いましたがwatchdog
、それをテストするために、次の行を追加しました
プログラムの先頭に移動し、アプリを実行するとエラーが発生しました
watchdog
何らかの理由で、実際にはパッケージが見つからないようです。
watchdog
py2app の--packages
オプションを使用して手動でパッケージを追加しようとしました:
しかし、それは効果がありませんでした。
バンドルされていない Python プログラムは、コマンド ラインから問題なく動作します。私がインポートした他のダウンロードモジュールはエラーを出していません。そして、単純な「Hello World!」をバンドルすることに成功しました。アプリはpy2appを使用しているので、セットアップは正しいと思います。
しかし、py2appにwatchdog
パッケージを見つける方法については、ちょっとアイデアがありません。どんなアイデアや助けも大歓迎です。
編集: setup.py
py2applet によって生成された my のテキストは次のとおりです。私はそれを変更していません。