使用 Elastic AI assistant for Observability 来分析日志

在今天的文章中,我们来参考之前的文章 "Elastic AI Assistant for Observability 和 Microsoft Azure OpenAI 入门" 来使用 Elastic AI assistant 分析日志。在本文章中,我们不使用 Azure clould。这样我们之间来进入主题,以免失去注意力。在本文展示中,我将展示如何创建 knowledge base。

为 Elastic Stack 配置 AI assistant

首先,我们参考之前的文章 "Elasticsearch:如何为 Elastic Stack 配置 AI Assistant"。来进行配置。我们按照文章里介绍的步骤进行 OpenAI 的配置。我们最终能看到如下的画面:

如上所示,我们已经成功地配置了 OpenAI。

添加日志

我们在 Kibana 中的 DevTools 里添加如下的命令:

复制代码
POST /logs-elastic_agent-default/_doc
{
	"message": "Status(StatusCode=\"FailedPrecondition\", Detail=\"Can't access cart storage. \nSystem.ApplicationException: Wasn't able to connect to redis \n  at cartservice.cartstore.RedisCartStore.EnsureRedisConnected() in /usr/src/app/src/cartstore/RedisCartStore.cs:line 104 \n  at cartservice.cartstore.RedisCartStore.EmptyCartAsync(String userId) in /usr/src/app/src/cartstore/RedisCartStore.cs:line 168\").",
	"@timestamp": "2024-02-22T11:34:00.884Z",
	"log": {
    	"level": "error"
	},
	"service": {
    	"name": "cartService"
	},
	"host": {
    	"name": "appserver-1"
	}
}

上述命令将在 Elasticsearch 中生成一个叫做 logs-elastic_agent-default 的 datastream。

使用 Elastic AI 助手

现在你已经有了可以使用的日志记录,让我们跳转到 Observability Logs Explorer,看看 AI Assistant 如何与日志数据交互。 单击顶层菜单并选择可观测性。

选择 Logs Explorer来浏览日志数据。

你应该会看到之前通过开发工具插入的一条日志记录。 单击展开图标可查看日志记录的详细信息。

你应该看到日志记录的展开视图。 我们不会尝试自己去理解它的内容,而是使用人工智能助手来总结它。 单击 What's this message? 按钮。

我们得到了一个相当笼统的答案。 根据我们尝试分析的异常或错误,这仍然非常有用,但我们可以通过向 AI Assistant 知识库添加额外的文档来使其更好。

让我们看看如何使用 AI Assistant 的知识库来提高其对特定日志消息的理解。

创建 Elastic AI Assistant 知识库

从 "Observability " 菜单中选择 "Overview"。

单击 Install Knowledge base按钮。

你需要等一段时间来完成创建 Knowledge base。

单击顶层菜单并选择 Stack Management

选择 Knowledge base选项卡。

将其 Name 设置为 "cartservice" 并输入以下文本作为内容:

复制代码
I have the following GitHub issue. Store this information in your knowledge base and always return the link to it if relevant.
GitHub Issue, return if relevant
 
Link: https://github.com/elastic/observability-examples/issues/25
 
Title: Cartservice Intermittent connection issue
 
Body:
The cartservice occasionally encounters storage errors due to an unreliable network connection.
 
The errors typically indicate a failure to connect to Redis, as seen in the error message:
 
Status(StatusCode="FailedPrecondition", Detail="Can't access cart storage.
System.ApplicationException: Wasn't able to connect to redis
  at cartservice.cartstore.RedisCartStore.EnsureRedisConnected() in /usr/src/app/src/cartstore/RedisCartStore.cs:line 104
  at cartservice.cartstore.RedisCartStore.EmptyCartAsync(String userId) in /usr/src/app/src/cartstore/RedisCartStore.cs:line 168')'.
I just talked to the SRE team in Slack, they have plans to implement retries as a quick fix and address the network issue later.

现在让我们回到 Observability Logs Explorer.。 单击顶层菜单并选择可 Observability

展开与之前相同的日志条目,然后单击 What's this message? 按钮。

从上面的输出中,我们可以看到和之前的显示不一样的结果。它利用了我们的知识库来生成相应的回答。

这样我们就完成了如何创建 Knowledge base 的工作。我在下面将继续使用中文来创建一些有趣的案例来供大家参考。敬请期待!

相关推荐
聚客AI37 分钟前
🙋‍♀️Transformer训练与推理全流程:从输入处理到输出生成
人工智能·算法·llm
ClouGence1 小时前
CloudCanal + Paimon + SelectDB 从 0 到 1 构建实时湖仓
数据库
BeerBear2 小时前
【保姆级教程-从0开始开发MCP服务器】一、MCP学习压根没有你想象得那么难!.md
人工智能·mcp
小气小憩2 小时前
“暗战”百度搜索页:Monica悬浮球被“围剿”,一场AI Agent与传统巨头的流量攻防战
前端·人工智能
神经星星2 小时前
准确度提升400%!印度季风预测模型基于36个气象站点,实现城区尺度精细预报
人工智能
IT_陈寒5 小时前
JavaScript 性能优化:5 个被低估的 V8 引擎技巧让你的代码快 200%
前端·人工智能·后端
Juchecar5 小时前
一文讲清 PyTorch 中反向传播(Backpropagation)的实现原理
人工智能
黎燃5 小时前
游戏NPC的智能行为设计:从规则驱动到强化学习的演进
人工智能
机器之心6 小时前
高阶程序,让AI从技术可行到商业可信的最后一公里
人工智能·openai
martinzh6 小时前
解锁RAG高阶密码:自适应、多模态、个性化技术深度剖析
人工智能