はじめに:強力なSLS「Alarm2.0」メッセージシステムを使用すると、インテリジェントな検査により、多くの内部システムと外部システム(EventBridge、FCなど)をブリッジできます。トラブルシューティングと問題の解決。
製品アーキテクチャ
インテリジェントな例外分析アプリケーションは、監視インジケーター、プログラムログ、運用および保守シナリオのサービス関係などのコア要素を中心に開発されています。機械学習などの手段で異常なイベントを生成し、サービストポロジの相関関係で時系列データとイベントを分析します。最終的に、企業の運用と保守の複雑さを軽減し、サービス品質を向上させます。製品アーキテクチャ図を以下に示します。
能力の説明:
- 単一のタスクは、3Kから5Kの観測オブジェクトの1次元および多次元の異常検出をサポートします
- タスクの検出結果は、異常スコアや異常形状を数値化しており、後処理に便利です。
- スコアが0.75を超える異常なポイントについては、Alert 2.0を介して関連情報(視覚化されたグラフ)をDingTalkシステムにプッシュします。
- すべての検出結果について、検出情報を現在のinternal-ml-logに書き込み、SDKを介して後続の統合を実行できるようにします。
- 同時に、アプリのタスクページでは、「アノテーションフィードバック」機能をサポートしており、検出結果に関連するアノテーションを付けて、モデルの学習精度を向上させることができます。
次に、「検査」機能をビジネスシステムにうまく組み込む方法を見てみましょう。
機能の統合
強力なSLS「アラーム2.0」メッセージシステムの助けを借りて、インテリジェントな検査は多くの内部および外部システム(EventBridge、FCなど)をうまく橋渡しすることができ、SLSSDKとカスタム関数を使用して「アラーム」の問題を解決することもできます問題のトラブルシューティングと解決をよりよく実現するための「分析タスク」の次のステップ。
タスクの作成
ここでは、SLS独自の監視シナリオを例として取り上げ、ツールをより適切に使用する方法を確認します。次のシナリオの問題を明確にします。LogStoreで、アクセスログを分解することにより、次の構造化された情報を取得できます(下の図を参照)。多くのお客様の実際のビジネスシナリオは類似しており、お客様のアクセス動作はアクセスログに記録されます。現在のビジネスのゴールデンインジケーターを調べることで、現在のサービスの各APIインターフェイスのサービス機能をよく知ることができます。
上記の構造に従って、検査が必要な現在のゴールデンインジケーターを定義します。
-
クラスタの各サービスインターフェイスの1分あたりの成功した応答の数
-
某集群各服务接口每分钟失败响应的次数
-
某集群各服务接口每分钟成功平均响应延时
-
某集群各服务接口每分钟失败平均响应延时
- | SELECT time - time % 60 AS time, method, Count(*) AS total, Count_if(status=200) AS n_succ, Sum( CASE WHEN status=200 THEN latency ELSE 0 END) / (1 + Count_if(status=200)) AS avg_succ_latency, Sum( CASE WHEN status!=200 THEN latency ELSE 0 END) / (1 + Count_if(status!=200)) AS avg_fail_latency FROM log GROUP BY time, method limit 100000
当然,我们还有另外一个形式的黄金指标,用来进行后续的监控,我们可以仅关注请求失败的接口中的数量的变化,具体的SQL如下
not STATUS: 200 |SELECT __time__ - __time__ % 60 AS time,
method,
status,
Count(*) AS num
FROM log
GROUP BY time,
method,
status limit 100000
我们【智能异常检测】App中完成作业的配置。入口地址 sls.console.aliyun.com/lognext/pro…
结果说明
通过上述配置,我们得到了一个【智能时序巡检】任务,我们根据下面的结果,介绍下截图中各部分的含义:
- 【巡检实体数量】:当前任务中一共包含了多少个观测对象
- 【巡检指标数量】:当前任务中每个观测对象的观测维度
- 【实体信息列表】:当前任务中全部参与巡检的观测对象,且给每个对象提供一个唯一编码
- 【异常事件列表】:当前选中的实体,在给定的时间窗口中,给定的过滤条件下的异常分数和异常类型
上述截图中的可视化信息均来自对应的Project下面的LogStore【internal-ml-log】中,关于这个logstore中存储的数据的详细说明,可以参考我们的官网文档。help.aliyun.com/document_de…
告警使用
您可以通过在【巡检任务】创建的最后一步中,配置多种消息发送逻辑
- 钉钉-自定义
- 事件总线(EventBridge)
- 函数计算(FC)
通过SDK/钉钉发送消息
这里面的详细配置逻辑以及解释不在赘述,更多信息可以参考这个链接:developer.aliyun.com/article/851… 里面较为详细的介绍了在告警中您可以使用那些字段进行后续的操作和判别。当巡检任务发现一个异常时,会将具体的信息按照如下的模版推送到钉钉的webhook地址。
函数计算(FC)
关于配置函数计算去进行后续操作的部分细节可以参考 help.aliyun.com/practice_de…
这里我们简单的说在下一步的分析思路:
参考资料
- 【智能异常分析】help.aliyun.com/document_de…
- 【结果字段说明】help.aliyun.com/document_de…
- 【智能巡检告警配置最佳实践】developer.aliyun.com/article/851…
- 【AIOps:自适应机器学习异常检测】developer.aliyun.com/article/784…
- 【告警对接函数计算实现自动响应】help.aliyun.com/practice_de…
原文链接:click.aliyun.com/m/100034811…
本文为阿里云原创内容,未经允许不得转载。