使用Azure Runbook 发送消息到Azure Storage Queue

客户需要定时发送信息到Azure Storage Queue,所以尝试使用Azure Runbook实现这个需求。

首先新增一个Azure Automation Account的资源。

使用Azure Runbook 发送消息到Azure Storage Queue

 

因为要使用Az.storage模组发送消息到Queue, 但是这个模组并没有包含在默认模组中,所以要手动添加一下。选择 Shared resources 下面的 Modules gallery.

使用Azure Runbook 发送消息到Azure Storage Queue

 

因为Az.Storage依赖Az.Accounts模组,所以我们先搜索Az.Accounts, 找到后,双击打开新窗口,点击Import。导入大概需要几分钟,导入成功后,我们重复同样的步骤添加Az.Storage模组。

使用Azure Runbook 发送消息到Azure Storage Queue

 

 都添加成功后,我们就可以添加我们的Runbook了

从左边的菜单栏选择Runbooks,然后Create a runbook, 输入名字,选择类型Powershell

使用Azure Runbook 发送消息到Azure Storage Queue

 

 具体的powershell脚本如下

$connectionName = "AzureRunAsConnection" $servicePrincipalConnection=Get-AutomationConnection -Name $connectionName Write-Output($servicePrincipalConnection.TenantId)
Connect
-AzAccount ` -ServicePrincipal ` -Tenant $servicePrincipalConnection.TenantId ` -ApplicationId $servicePrincipalConnection.ApplicationId ` -CertificateThumbprint $servicePrincipalConnection.CertificateThumbprint $storageAccount=Get-AzStorageAccount -ResourceGroupName "******" -StorageAccountName "********" #这里输入你自己的resource group名字和storage account的名字。 $ctx=$storageAccount.Context $queue=Get-AzStorageQueue -Name "test-spfx" -Context $ctx $queueMessage = [Microsoft.Azure.Storage.Queue.CloudQueueMessage]::new("This is message from runbook") $queue.CloudQueue.AddMessageAsync($QueueMessage) Write-Output ("Send message to queue.")

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wspdzj.html