Runbookを作ってチェックインして、すぐにOrchestrator Web Consoleから実行確認しようとすると、先程作ったRunbookが表示されていないことがあります。Web Browserをリフレッシュしても表示されません。
結局、10分くらいで表示されるのですがカラクリは以下にあるようです。
OrchestratorのDBで以下のクエリを実行してみてください。
use Orchestrator select * from [Microsoft.SystemCenter.Orchestrator.Maintenance].MaintenanceTasks
結果としてメンテナンスジョブが返ってきます。このなかでClearAuthorizationCacheのジョブがOrchestrator Web Consoleの情報をリフレッシュしてくれるジョブのようです。
Intervalが600(10分)になっているのがわかります。
Id Name ProcedureName IsEnabled LastExecutionTime IntervalInSeconds IsTimerBased ConversationHandle 1 Authorization [Microsoft.SystemCenter.Orchestrator.Maintenance].[AuthorizationMaintenance] 1 2014-12-03 01:28:51.957 1800 0 NULL 2 Statistics [Microsoft.SystemCenter.Orchestrator.Statistics.Internal].[ComputeStatistics] 1 2014-12-03 01:36:09.457 600 1 1E0C8B37-B368-E411-80CA-000D3A4002F1 3 ClearAuthorizationCache [Microsoft.SystemCenter.Orchestrator.Internal].[ClearAuthorizationCache] 1 2014-12-03 01:36:09.440 600 1 200C8B37-B368-E411-80CA-000D3A4002F1
10分待つのが面倒な場合。このメンテナンスジョブの実体はこのストアドプロシージャになります。
[Microsoft.SystemCenter.Orchestrator.Internal].[ClearAuthorizationCache]
ストアドプロシージャの中身を見ると、以下のようになっています。
USE [Orchestrator] GO /****** Object: StoredProcedure [Microsoft.SystemCenter.Orchestrator.Internal].[ClearAuthorizationCache] Script Date: 2014/12/03 10:53:53 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO ALTER PROCEDURE [Microsoft.SystemCenter.Orchestrator.Internal].[ClearAuthorizationCache] @currentTime datetime, @lastExecutionTime datetime AS BEGIN SET NOCOUNT ON; TRUNCATE TABLE [Microsoft.SystemCenter.Orchestrator.Internal].AuthorizationCache END
つまりは以下のSQL Server Management Studioからコマンドを打ってからBrowserをリフレッシュすれば、登録したばかりのRunboookがOrchestrator Web Consoleから見えるようになります。
USE Orchestrator TRUNCATE TABLE [Microsoft.SystemCenter.Orchestrator.Internal].AuthorizationCache