标签: sp-askbrent

如何导出 sp_AskBrent 的输出?

我们有一个实例会随机尖峰 CPU。我想创建一个在 CPU 上触发超过 90% 的警报,并自动调用一个正在运行的作业sp_AskBrent并将输出通过电子邮件发送给我。但是,文本或 HTML 输出中的输出不可读。它甚至不适合 Excel 电子表格。如何以可读格式获取信息?

sql-server database-mail format sp-askbrent

11
推荐指数
1
解决办法
451
查看次数

在 PowerShell 中使用 @ExpertMode = 1 运行 sp_AskBrent

我正在尝试sp_AskBrent使用 PowerShell运行Invoke-SQLCmd并在变量中捕获其输出:

$query = "EXEC SAIDBA.monitoring.sp_AskBrent @Seconds=10;"
$check = Invoke-Sqlcmd -ServerInstance $ServerInstance -Query $query 
             -ErrorAction Stop -ConnectionTimeout 3
Run Code Online (Sandbox Code Playgroud)

使用ExpertMode = 0运行时,没问题。

但是当使用ExpertMode = 1运行时,我们注意到三件事:

  1. 它将每个数据输出到shell
  2. $check 一片空白
  3. 它以以下错误结束:

    Invoke-Sqlcmd:SQL PowerShell 中不允许出现重复的列名。要重复列,请使用 Column_Name AS New_Name 格式的重复列的列别名。
    在行:1 字符:18

    • $check = Invoke-Sqlcmd -ServerInstance $ServerInstance -Query $query -Er ...
    • CategoryInfo: SyntaxError: (:) [Invoke-Sqlcmd], SqlPowerShellSqlExecutionException
    • FullQualifiedErrorId : DuplicateColumnNameErrorMessage, Microsoft.SqlServer.Management.PowerShell.GetScriptCommand

我认为有一种解决方法可以提供sp_AskBrentExpertMode数据存储到表中并随后从这些表中选择的参数,但我想确保无法在 PowerShell 中立即恢复所有内容。

sql-server powershell sqlcmd sp-askbrent

6
推荐指数
2
解决办法
1107
查看次数

缺少第一响应工具包 sp_AskBrent

我刚刚下载了急救包。不幸的是,“sp_AskBrent”未包含在下载中。我怎样才能得到它来完成套件?

tools sp-askbrent

2
推荐指数
1
解决办法
772
查看次数