我有一些数据工厂管道,当将数据从 blob 复制到 SQL 时,有时可能会运行超过 2 小时。时间段是可变的,但我希望在任何管道运行超过 2 小时时收到通知/警报。
有哪些可能的方法可以做到这一点?
到目前为止我已经尝试过:
有没有办法将日志数据从 Application Insights 导出到 Elasticsearch?
Application Insights 正在监视我的弹性集群。
我希望能够将这些日志导出到 Elasticsearch。我在想,如果我随后将 sql-db 与 Logstash 连接起来,那么使用流分析设置连续导出到 sql 可能会起作用。
但这似乎不必要地复杂。
任何想法和想法都值得赞赏。提前。
编辑以澄清:我想将 Application Insights 数据导出到单独的 Azure/弹性集群。
elasticsearch logstash azure-monitoring azure-application-insights elastic-stack
我们有一个基于 Azure 的系统,该系统的复杂性不断增加,我们需要监视事件链并确保它们到达我们期望的位置。
我们有一个本地 Java 应用程序,它将事件发送到 IoT 中心。IoT 中心路由到服务总线队列。我们有更新 Cosmos 数据库、触发其他函数或路由到其他队列的函数。某些函数也可以通过 API 管理实例调用。
我们的函数已经连接到 Application Insights,这里 Application Insights 实例的命名与 Function App 相同(IIRC 这个命名是通过创建 AI 资源的表单建议的)
Application Insights 中的应用程序地图让我倾向于每个环境一个 AI,以获得完整的系统地图。Log Analytics 在每个环境中使用一个日志分析似乎也是合乎逻辑的,以便能够在需要时关联数据。
Log Analytics 和 Application Insights 的正确路径分别是什么?
如果没有我标题中所说的那么明确,那么当我开始使用这些服务时,我需要考虑哪些因素?
azure azure-monitoring azure-application-insights azure-log-analytics
我已使用 KQL 将图表和日志从 Azure Log Analytics 添加到仪表板。我正在使用make-series它,效果很好,但问题如下:
我收到的日志可能不会扩展到仪表板规定的整个时间范围。所以基本上我需要访问开始时间/结束时间(和时间粒度)以覆盖make-series整个时间范围。
例如
logs
| make-series
P90 = percentile(Elapsed, 90) default = 0,
Average = avg(Elapsed) default = 0
// ??? need start/end time to use in from/to
on TimeGenerated step 1m
Run Code Online (Sandbox Code Playgroud) 要在 Azure 防火墙上创建诊断设置,我想传入日志和指标设置。
我在 2 个变量中定义这些,然后将它们传递到 Azure CLI:
$logsSetting = "[{'category': 'AzureFirewallApplicationRule','enabled': true,'retentionPolicy': {'days': 0,'enabled': false}},{'category': 'AzureFirewallNetworkRule','enabled': true,'retentionPolicy': {'days': 0,'enabled': false}}]"
$metricsSetting = "[{'category': 'AllMetrics','enabled': true,'retentionPolicy': {'days': 0,'enabled': false},'timeGrain': null}]"
az monitor diagnostic-settings create --name $FW_NAME `
--resource $FW_NAME -g $VNET_GROUP --resource-type Microsoft.Network/azureFirewalls `
--resource-group $VNET_GROUP `
--workspace $FW_NAME `
--logs $logsSetting `
--metrics $metricsSetting
Run Code Online (Sandbox Code Playgroud)
执行这个我得到Expecting property name enclosed in double quotes: line 1 column 3 (char 2)。
我试过没有成功
'为"我已经创建了 Azure Log Analytics(监控)警报来监控逻辑应用程序故障,并且我已经使用 Azure 门户完成了这项工作。我想知道如何将 Azure 门户创建的警报导出为 ARM 模板?任何人都知道我们如何实现它。
我需要使用 terraform 为多个虚拟机创建警报。有人有一个我可以使用的简单例子,例如:
我想监视名为 Rg1 的资源组中名为 vm01、vm01、vm03 的 Azure 虚拟机。例如,我想监控 CPU 使用率和内存。有人可以帮助我提供一个简单的示例,然后我可以在此基础上进行构建吗?
在工作簿中,我显示了一个时间表,比较限制请求与非限制请求。该查询使用了汇总运算符,虽然其功能正常,但经常遇到“数据点过多 (10000)”错误。我尝试使用限制运算符,但它不起作用(我认为这是因为汇总运算符正在执行两项操作并且数据点超出其中一项操作)
此外,我在工作簿中包含了一个时间范围选择器来限制时间跨度,但即使在繁忙的一天中的一个小窗口也可能导致出现错误。
我也在考虑以另一种方式限制记录,但我不确定如何。该图表必须显示 RPS,因此不能将其更改为 RPM。
Requests
| project TimeGenerated, ResultType
| summarize Throttled = countif(ResultType == "Throttled") , Total_Requests = count() by bin(TimeGenerated,1s);
//| limit 9999 <-- This does not work
Run Code Online (Sandbox Code Playgroud)
azure azure-monitoring kql azure-data-explorer azure-monitor-workbooks
当我使用 OMS 解决方案配置 Azure 监控并使用此答案为现有虚拟机启用 Azure Monitor 使用 terraform 时,我注意到此功能已被弃用,Azure 更希望您迁移到新的监控解决方案(不使用日志分析代理) 。
Azure 允许我使用此 GUI 配置虚拟机监控,但我想使用 terraform 来完成此操作。
我必须在 terraform 中使用特定的设置才能实现此目的吗?(顺便说一句,我使用的是 Linux VM)
azure-monitoring ×10
azure ×7
kql ×2
azure-alerts ×1
azure-cli ×1
logstash ×1
monitoring ×1
powershell ×1
terraform ×1