2017-09-20 4 views
0

過去のプロジェクトでは、何かがキューに入っているとき(一日に一度)、ポイズンキューのメッセージ数と警告をWebhookを使って調べるアラートルールを設定することができました。ポイズンキュー数のAzure警告ルール

私は、物が動いているように見えるので、Azureにこれがどこにあるかを見つけようとしていました。これが紺碧によって提供された機能でない場合は、類似のものを実装する際の最善のルートについての指針を与えることができます。

おかげ

答えて

0

私は物事が周りに移動しているように見えるとして、これはアズールに存在する場所を見つけることを試みていました。これが紺碧によって提供された機能でない場合は、類似のものを実装する際の最善のルートについての指針を与えることができます。

私が知る限り、現時点ではazureによって、ポイズンキューの数を確認する警告ルールを送信する機能はありません。

この要件を満たすロジックを作成する必要があります。

webjob/azure関数のタイマートリガーまたはキュートリガーを使用することをお勧めします。

5分ごとに毒素カウントを確認する場合は、timer triggerを選択します。

次に、タイマートリガー方式では、ApproximateMessageCountメソッドを使用してキューメッセージの数を取得できます。

最後に、sendgridを使用して通知メールを特別なアカウントに送信できます。

コード:

 //get the storage account from the connection string 
     CloudStorageAccount storageAccount = CloudStorageAccount.Parse(CloudConfigurationManager.GetSetting("StorageConnectionString")); 

     //instantiate the client 
     CloudQueueClient queueClient = storageAccount.CreateCloudQueueClient(); 

     CloudQueue q = queueClient.GetQueueReference("queue-poison"); 
     q.FetchAttributes(); 
     var qCnt = q.ApproximateMessageCount; 

新しいキューメッセージがポイズン・キューに追加したときに、カウントを取得したい場合。 queue triggerを選択できます。コードはタイマートリガーと同じですが、パラメータを変更するだけです。