1

LiquidOffice 6.2.4 を実行しています。Web サービス タスクが中断する原因となるネットワークの問題がいくつか発生しています。これが大きな問題にならないように、再試行シーケンスに取り組んでいます。

ただし、適切なアクションを実行できるように、タスクが中止された LO プロセスがいつ発生するかを知る必要があります (これは管理コンソールで実行できますが、アラートはありません)。私は LiquidOffice SOAP API を調べて何かを見つけようとしましたが、これまでのところ不十分です。実行可能な解決策が得られたら、このチェックを SCOM アラートに統合します。

他の誰かが同様のことをしましたか (SOAP を介してプロセス検索を実行しました)? ガイダンスやヒントをいただければ幸いです。C# で SOAP 呼び出しを実装する予定です。

4

1 に答える 1

1

管理コンソールからの SOAP クエリと応答は確認できますが、自分で接続するためのエンドポイントを見つけることができませんでした。とにかく、これは全体的に大きな面倒のように思えました。そこで、データベースに直接アクセスするというアイデアを思いつきました。LiquidOffice データベースが SQL 2005 インスタンスに格納されているため、次のクエリを作成しました。

SELECT  P.PROC_ID AS [ID],
        REVERSE(LEFT(REVERSE(PDef.PROC_DFN_PATH),CHARINDEX('/',REVERSE(PDef.PROC_DFN_PATH))-1)) AS [Process],
        T.TASK_NAME AS [Task],
        DATEADD(millisecond, DATEDIFF(millisecond,GETUTCDATE(),GETDATE()), DATEADD(MINUTE, (P.START_DATE/60000), '1/1/1970')) AS [Started]
    FROM dbo.CS_PROCESSES AS P
        INNER JOIN dbo.CS_TASKS AS T
            ON P.PROC_ID = T.PROC_ID
        INNER JOIN dbo.CS_PROCESS_DFN AS PDef
            ON P.PROC_DFN_ID = PDef.PROC_DFN_ID
    WHERE T.[STATE] = 3

これにより、失敗したすべてのタスクが返され、プロセス ID、プロセス名、失敗したタスク名、およびプロセスが開始された日時が示されます。完璧ではありませんが、私たちにとってはうまくいきます!

于 2011-01-13T14:25:16.323 に答える