みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
You are not logged in.
Pages: 1
社内内製システムでクライアントの死活監視についてご相談です。
クラウド上にファイルメーカーサーバー(FMS15)があり、
各事業所毎にクライアント(FMP15)がSSL接続しています。
各事業所は小規模で1~5台で収まりまり、いずれもWindowsプラットホームです。
クライアントは2タイプ(ホストPC、ゲストPC)あり、
ホストPC:1.事業所内の既存システムにODBC接続し、データを24時間ごとにFMS15に登録する。
2.一部のデータは社内ルールで外部保存禁止されているため、ローカルファイルとして保存し、共有ファイルとして常に開いておく。
他事業所からこのデータが見られなくてもやむを得ない。
ゲストPC:1.社員が業務で使用するときにFMP15を起動し、FMSと事業所内のホストPCのローカルファイルに接続し、データの閲覧や変更を行う。
ホストPCの死活監視のため、ホストPCでOSのタスクスケジューラとFMPのOnTimerスクリプトにて数分毎に死活監視スクリプトを実行するようにしています。
しかし、稀に下記障害等で、ホストPC上にダイアログが表示されます。
1.一時的な通信障害でFMSとの接続が解除される。
2.スクリプト実行時の重い処理等で強制終了される。
こうなると、ダイアログを閉じない限り、スクリプトが実行されなくなります。
死活監視スクリプト実行時にテキストファイルにタイプスタンプを保存するようにし、
bat処理にて、タイムスタンプが一定時間以上になったらFMPを強制終了し再起動することを考えていますが、
強制終了はDB破損を生じる恐れがあると思うので、なるべく避けたいです。
なお、各事業所はPCに詳しくない人が多いので、対応を任せられません。
何か良い方法はありませんでしょうか。
タイムスタンプが一定以上だった時の処理を強制終了ではなく、
止めてしまうダイアログのOKやキャンセルが出るであろう座標位置で
マウスクリックをエミュレーションしてくれるいわゆる自動運転ソフトを使うのが
最も簡素にお試しできる方法かも....単なる思い付きですが
Offline
サイトライセンスをお持ちでしたら、各事業所にあるホスト機能を持つものを FileMaker server にしてしまうという方法もあると思います。Windows server が必要になるところがネックかもしれませんが、ここだけ Mac にしてしまいましょう。
マウスクリックエミュレーション以外にも、SendKey を使って Enter を送り込んでも良いかも。
Offline
ひぐらし様、Shin様
お返事ありがとうございます。
おっしゃるとおり事業所側もFileMaker serverにしてしまう、正攻法が最も信頼性が高い方法ですね。
MacとはMac miniでしょうか、ストレージはSSDか外付けHDDでしょうか。このためだけにMac Pro導入はちょっと高いですね。
予算も限られすぐに試すことができませんので、長期的な検討課題とします。
まずは、今あるシステムでの解決策を考えてみました。
>強制終了ではなく、止めてしまうダイアログを閉じる、
>SendKey を使って Enter を送り込んでも良いかも。
これをヒントに、下記のロジックを仕込んでみました。
・数分毎の死活監視スクリプトでタイムスタンプを吐き出すようにする。
・ダイアログのクリック(enter)は、vbsのsendkeyを用いる。vbsはbatから呼び出す。
これで何となく動くものができました。
あとはテストですが、回線引っこ抜くのはできそうですが、強制終了で落ちるテストは少し工夫が必要そうです。
懸念は、タイムスタンプを吐き出すたびにホストPCの安価なHDDに書き込むので、ストレージ障害です。
ここは強化を検討します。
Pages: 1
[ Generated in 0.007 seconds, 7 queries executed - Memory usage: 511.77 KiB (Peak: 518.04 KiB) ]