gpt4 book ai didi

azure - Runbook 测试 Pane 不显示写入输出

转载 作者:行者123 更新时间:2023-12-02 23:14:00 26 4
gpt4 key购买 nike

我对自动化是全新的,对 Powershell 也很陌生,所以我希望这是一个简单的修复。 :)

我正在尝试运行一些代码。据我所知,它确实运行了,但测试 Pane 没有显示任何内容。基于此线程:Azure powershell runbook don't show any output ,我确实尝试重新发布代码并清除浏览器缓存,但这对我的情况没有帮助,所以我认为代码有问题?

这是我的(通用)代码):

workflow DB_DailyTasks 
{
Write-Output "Code starting"

inlinescript
{
[string] $SqlServerName = "myDb.database.windows.net"
$Credential = Get-AutomationPSCredential -Name "myDatabase-automation"
# Setup credentials
$ServerName = $Using:SqlServerName
$UserId = $Using:Credential.UserName
$Password = ($Using:Credential).GetNetworkCredential().Password

# Execute the udp_myProc procedure

# Create connection for each individual database
$DatabaseConnection = New-Object System.Data.SqlClient.SqlConnection
$DatabaseCommand = New-Object System.Data.SqlClient.SqlCommand

Write-Output "ConnectionState is: $(DatabaseConnection.State)"

$DbName = "myDb"

# Setup connection string for $DbName
$DatabaseConnection.ConnectionString = "Server=$ServerName; Database=$DbName; User ID=$UserId; Password=$Password;"
$DatabaseConnection.Open();

Write-Output "ConnectionState is: $(DatabaseConnection.State)"

# Create command for a specific database $DBName
$DatabaseCommand.Connection = $DatabaseConnection

Write-Output "Running udp_myProc procedure"

$DatabaseCommand.CommandText = "EXECUTE [dbo].[udp_myProc]"
$NonQueryResult = $DatabaseCommand.ExecuteNonQuery()

# Close connection to $DbName
$DatabaseConnection.Close()
}
}

...这是我尝试测试时在测试 Pane 中看到的内容: Unhelpful test pane

...这对于了解它是否真正运行并没有多大帮助。

预先感谢您提供的任何帮助! :)

[编辑]代码肯定没有运行。存储过程将一个条目插入到历史表中,并且没有它运行的记录,无论是测试还是运行发布的输出。

有趣的是,当我运行已发布的输出时,没有错误也没有警告,但它确实在“输出”选项卡中显示“此作业没有任何输出”。

[编辑#2]:它也没有在我的本地计算机上写入任何内容??

[编辑 #3]:将 inlinescript block 内的 Write-Output 替换为 Write-Host。无论是在 Azure 管理控制台上还是在我的本地计算机上,都没有任何变化。

最佳答案

我的猜测是,您创建的是 PowerShell Runbook,而不是 PowerShell 工作流 Runbook。如果这是正确的,那么您的 Runbook 代码声明一个名为 DB_DailyTasks 的工作流,但从不调用它。例如,您可以声明一个函数,但不会期望它因此而被自动调用

除非您确定需要工作流,而不是常规的 PowersShell Runbook,否则我建议从代码中删除 workflowInlineScript ,并处理常规 PowerShell。

但是,如果您确实需要它成为一个工作流程(不推荐,除非您必须使用检查点以及诸如 parallelforeach -parallel 之类的东西),那么创建一个“PowerShell Workflow”类型的 Runbook:它以不同的方式处理 workflow 关键字,因此您的代码将是正确的。

关于azure - Runbook 测试 Pane 不显示写入输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58032960/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com