前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Spring Boot 项目上传日志到 Azure Application Insights

Spring Boot 项目上传日志到 Azure Application Insights

作者头像
HoneyMoose
修改2020-10-29 10:35:52
3680
修改2020-10-29 10:35:52
举报
文章被收录于专栏:CWIKIUSCWIKIUS

Azure 提供了一个 Application Insights 工具。

这个工具可以对 Spring Boot 项目中的 API 请求,日志进行分析。

你需要做的就是在你的 Spring Boot 项目中配置好依赖和参数后,Spring Boot 项目启动后就会自动将日志上传到 Azure 供分析。

配置 Azure

不管怎么用,Azure 都首先需要进行配置。

我们现在针对配置的是日志删除到 Azure 上进行日志分析。

Log Analytics workspaces

我们首先需要配置一个 Log Analytics workspaces,搜索资源 Log Analytics workspaces。

azure-spring-log-01
azure-spring-log-01

在弹出的界面中将会显示已经配置好的日志分析工作空间。

如果你还没有的话,你需要创建一个。

单击界面上的 Add 按钮,进行新建。

azure-spring-log-02
azure-spring-log-02

在新建的对话框中你需要对你的费用订购部分进行配置。

如果你还没有配置的话,你可能需要到 Azure 的控制台中配置信用卡。

在第二部分输入的是名称和区域,名称可以根据需要命名,区域的话,选一个离你最近的就可以了。

azure-spring-log-03
azure-spring-log-03

在配置完上面的参数后,创建就可以了。

Application Insights

在最上面的搜索框中搜索 Application Insights

然后你会看到 Application Insights 的界面,单击左侧的添加按钮来添加一个应用。

azure-spring-log-04
azure-spring-log-04

这里也有几个配置,在最上面的是费用计算和订购。

中间的部分是有关资源的名称。

在最下面的就是有关日志的配置了,因为要在这里进行选择,这就是为什么我们需要首先配置日志工作空间的原因,否则是没有办法配置日志的。

azure-spring-log-05
azure-spring-log-05

在一切配置妥当后,单击最下面的预览并创建即可。

在创建成功后,你的项目会获得一个 Instrumentation Key,这个是需要配置到你 Spring Boot 项目中的。

现在你可以先拷贝下来。

azure-spring-log-06
azure-spring-log-06

Spring 项目

在Spring 项目中需要进行一些调整就可以了。

maven 依赖

你需要为你的项目添加 Maven 依赖。

代码语言:javascript
复制
       <dependency>
            <groupId>com.microsoft.azure</groupId>
            <artifactId>applicationinsights-logging-logback</artifactId>
            <version>2.6.2</version>
        </dependency>

上面的依赖将会将日志上传需要的类添加进来。

application.properties

在 Spring Boot 配置文件中,添加下面的参数

代码语言:javascript
复制
# Azure Application Insights
azure.application-insights.instrumentation-key=[开始让你拷贝的 ID]
spring.application.name=[Azure 中定义的名称]

根据上面在 Azure 的配置,将上面的参数修改为你的 Azure 配置。

logback.xml

因为我们的项目使用的是 logback 为日志,因此我们需要在 logback.xml 中添加下面的内容。

代码语言:javascript
复制
    <appender name="aiAppender"
              class="com.microsoft.applicationinsights.logback.ApplicationInsightsAppender">
        <instrumentationKey>[开始让你拷贝的 ID]</instrumentationKey>
    </appender>

    <!-- APPENDER-REF -->
    <root level="debug">
        <appender-ref ref="aiAppender"/>
    </root>

上面的内容非常简单,就是将日志级别为 debug 的全部输出到 Azure 上面去。

在官方的代码中,这里使用了日志级别为 TRACE,我们不建议使用。因为这样会输出非常多的日志,让你的访问非常缓慢。

查看结果

当所有配置完成以后,开始在你的本地运行你的 Spring Boot 应用程序。

稍等一些时间后登录 Azure,然后选择 Transaction search。

在界面中你可能看不到任何数据,你需要单击界面中的显示所有 24 小时内的数据。

azure-spring-log-07
azure-spring-log-07

如果你能看到程序删除的日志,主要是查看时间,那么就说明一切都已经配置好了。

azure-spring-log-08
azure-spring-log-08

本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文系转载前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 配置 Azure
    • Log Analytics workspaces
      • Application Insights
      • Spring 项目
        • maven 依赖
          • application.properties
            • logback.xml
            • 查看结果
            相关产品与服务
            Elasticsearch Service
            腾讯云 Elasticsearch Service(ES)是云端全托管海量数据检索分析服务,拥有高性能自研内核,集成X-Pack。ES 支持通过自治索引、存算分离、集群巡检等特性轻松管理集群,也支持免运维、自动弹性、按需使用的 Serverless 模式。使用 ES 您可以高效构建信息检索、日志分析、运维监控等服务,它独特的向量检索还可助您构建基于语义、图像的AI深度应用。
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档