当前位置: 首页 > news >正文

哈尔滨道外区建设局官方网站织梦cms 获得网站流量次数

哈尔滨道外区建设局官方网站,织梦cms 获得网站流量次数,专属头像制作免费,徐州做网站优化一、前言 人们通过私人和专业的移动应用程序在智能手机上处理越来越多的事情。 拥有成千上万甚至数百万的用户#xff0c;确保出色的性能和可靠性是移动应用程序和相关后端服务的提供商和运营商面临的主要挑战。 了解移动应用程序的行为、崩溃的发生和类型、响应时间慢的根本…一、前言 人们通过私人和专业的移动应用程序在智能手机上处理越来越多的事情。 拥有成千上万甚至数百万的用户确保出色的性能和可靠性是移动应用程序和相关后端服务的提供商和运营商面临的主要挑战。 了解移动应用程序的行为、崩溃的发生和类型、响应时间慢的根本原因以及后端问题对用户的实际影响是管理移动应用程序和相关后端服务性能的关键。 Elastic 推出了适用于 Android 应用程序的应用程序性能监控 (APM) 代理允许开发人员跟踪其应用程序的关键方面从崩溃和 HTTP 请求到屏幕渲染时间和端到端分布式跟踪。 所有这些都有助于解决移动应用程序、相应后端服务及其交互的问题和性能缺陷。 Elastic APM Android 代理会自动检测你的应用程序及其依赖项因此你可以简单地将代理 “即插即用” 到你的应用程序中而不必担心对代码库进行太多更改。 Elastic APM Android 代理是在 OpenTelemetry 之上从头开发的OpenTelemetry 是一种开放标准和可观察性框架。 开发人员将能够充分利用其功能以及庞大而活跃的社区提供的支持。 如果你熟悉 OpenTelemetry 并且你的应用程序已经使用 OpenTelemetry 进行检测那么你可以在切换到 Elastic APM Android Agent 时简单地重用它。 但如果情况并非如此请不要担心 —— 代理被配置为自动处理常见的可追踪场景而无需深入研究 OpenTelemetry API 的细节。 二、怎么运行的 Elastic APM Android Agent 是 SDK 和 Gradle 插件的组合。 SDK 包含实用程序可让你初始化和配置代理的行为以及准备和初始化 OpenTelemetry SDK。 你可以使用 SDK 以编程方式配置和初始化代理特别是高级和特殊用例。 在大多数情况下不需要编程配置和初始化。 相反你可以使用提供的 Gradle 插件来配置代理并自动检测你的应用程序。 Gradle 插件在后台使用 Byte Buddy 和官方 Android Gradle 插件 API通过应用程序及其依赖项类的编译时转换自动将检测代码注入你的应用程序。 在配置并启用 Elastic Android APM 代理 Gradle 插件的情况下编译你的应用程序将使你的 Android 应用程序在运行时报告跟踪数据、指标以及不同的事件和日志。 三、在 Android 应用程序中使用 Elastic APM 代理 通过一个简单的演示应用程序我们将按照 “设置代理” 指南中提到的步骤来设置 Elastic Android APM 代理。 先决条件 对于此示例你将需要以下内容 启用了 APM 的 Elastic Stack我们推荐使用 Elastic 的 Cloud 产品。免费试用。 Java 11 Android Studio Android 模拟器、AVD 设备 你还需要一种方法将应用程序的信号推送到 Elastic。 因此你将需要 Elastic APM 的秘密令牌secret token稍后你将在我们的示例应用程序中配置该令牌。 我们示例的测试项目 为了展示包括分布式跟踪在内的端到端场景在此示例中我们将检测一个简单的天气应用程序该应用程序包含两个 Android UI 片段和一个基于 Spring Boot 的简单本地后端服务。 第一个片段将有一个包含一些城市名称的下拉列表以及一个将你带到第二个片段的按钮你将在其中看到所选城市的当前温度。 如果你在第一个屏幕上选择了一个非欧洲城市那么当你前往第二个屏幕时你会从本地后端收到一个错误。 这是为了演示如何在 Elastic APM 中捕获和关联网络和后端错误。 应用 Elastic APM 代理插件 在下文中我们将解释从头开始为 Android 应用程序设置 Elastic APM Android 代理所需的所有步骤。 如果你想跳过这些说明并立即查看代理的运行情况请使用该存储库的主分支并仅应用步骤 (3.b)然后再继续下一节“设置本地后端服务”。 1.克隆示例应用程序库并在 Android Studio 中打开它。 2.切换到 uninstrumented 的 repo 分支从一个空白的、未检测的 Android 应用程序开始。 你可以运行此命令切换到未检测的分支 git checkout uninstrumented3.按照 Elastic APM Android Agent 的设置指南进行操作 将 co.elastic.apm.android 插件添加到 app/build.gradle 文件请确保使用该插件的最新版本你可以在此处找到该插件。 通过在 app/build.gradle 文件的 “elasticAPM” 部分中提供 “serverUrl” 和 “secretToken” 来配置代理与 Elastic APM 后端的连接。 1. // Android apps build.gradle file 2. plugins { 3. //... 4. id co.elastic.apm.android version [latest_version] 5. }7. //...9. elasticApm { 10. // Minimal configuration 11. serverUrl https://your.elastic.apm.endpoint13. // Optional 14. serviceName weather-sample-app 15. serviceVersion 0.0.1 16. secretToken your Elastic APM secret token 17. } 4.唯一实际需要更改的代码是一行代码用于在 Application.onCreate 方法中初始化 Elastic APM Android 代理。 此示例应用程序的应用程序类位于 app/src/main/java/co/elastic/apm/android/sample/MyApp.kt。 package co.elastic.apm.android.sample3. import android.app.Application 4. import co.elastic.apm.android.sdk.ElasticApmAgent6. class MyApp : Application() {8. override fun onCreate() { 9. super.onCreate() 10. ElasticApmAgent.initialize(this) 11. } 12. } 请记住对于此示例我们不会更改代理的默认配置 —— 如果你想了解有关如何更改的更多信息请查看代理的运行时配置指南。 在启动我们的 Android 天气应用程序之前我们需要配置并启动本地天气后端服务如下一节所述。 设置本地后端服务 代理提供的关键功能之一是分布式跟踪它允许你查看 HTTP 事务的完整端到端故事从我们的移动应用程序开始并遍历应用程序使用的检测后端服务。 Elastic APM 将以一个分布式跟踪的形式向你展示全貌这对于解决问题非常方便尤其是与高延迟和后端错误相关的问题。 作为示例应用程序的一部分我们将启动一个简单的本地后端服务来处理我们应用程序的 HTTP 请求。 后端服务使用 Elastic APM Java 代理进行检测以收集自己的 APM 数据并将其发送到 Elastic APM使其能够将移动交互与后端请求的处理相关联。 为了配置本地服务器我们需要在 backend/src/main/resources/elasticapm.properties 文件中设置我们的 Elastic APM 端点和秘密令牌与上一步中我们的 Android 应用程序使用的相同 1. service_nameweather-backend 2. application_packagesco.elastic.apm.android.sample 3. server_urlYOUR_ELASTIC_APM_URL 4. secret_tokenYOUR_ELASTIC_APM_SECRET_TOKEN 启动演示 我们的示例应用程序将为代理当前支持的框架获得自动检测这意味着我们将看到屏幕渲染跨度以及开箱即用的 OkHttp 请求。 对于当前不支持的框架你可以应用手动检测来丰富你的 APM 数据请参阅下面的 “手动检测”。 我们准备启动演示。 该demo旨在使用Android模拟器在本地环境中执行。因此我们需要 在位于示例项目根目录的终端中使用此命令启动后端服务./gradlew bootRun如果你使用的是 Windows则为 gradlew.bat bootRun。 或者你可以从 Android Studio 启动后端服务。 在 Android 模拟器来自 Android Studio中启动天气示例应用程序。 一切运行后我们需要在应用程序中四处导航以生成一些我们希望在 Elastic APM 中观察到的负载。 因此选择一个城市单击 “Next” 并重复多次。 请确保至少选择 New York 一次。 你会看到天气预报对纽约这个城市不起作用。 下面我们将使用 Elastic APM 来找出选择纽约时出现的问题。 初看 APM 结果 让我们打开 Kibana 并导航到 Observability 解决方案。 在 Services 导航项下你应该看到两个服务的列表我们的 Android 应用 weather-sample-app 和相应的后端服务 weather-backend。 单击 Service map 选项卡以查看这些服务与任何外部服务之间依赖关系的可视化。 单击 weather-sample-app 以深入了解 Android 应用程序的仪表板。 移动应用程序的服务视图在发布此博文时处于技术预览technical preview阶段但你已经可以在该屏幕上看到有关该应用程序的深入信息。 你会看到所选时间范围内的活动会话数量、weather-sample-app 发出的 HTTP 请求数量、请求的地理分布以及设备型号、操作系统版本、网络连接类型和应用程序的细分等信息 版本。 有关崩溃和应用程序加载时间的信息正在开发中。 为了演示的目的我们保持这个演示简单所以数据不那么多样化也相当有限。 但是当你监控使用次数较多且设备型号、操作系统版本等方面更加多样化的移动应用程序时此类数据特别有用。当你可以使用这些属性进行过滤和分组你的 APM 数据时故障排除和性能问题变得更加容易 。 你可以使用顶部的快速过滤器来执行此操作并查看指标如何根据你的选择被采用。 现在让我们看看如何处理单个用户交互包括对后端服务的下游调用。 在 Transactions 选项卡顶部下我们看到不同的端到端 transaction 组包括 FirstFragment 和 SecondFragment 的两个 transactions。 让我们深入研究 SecondFragment - 查看出现的 transaction以查看此 transaction 组的指标例如延迟、吞吐量以及单个用户交互的调用瀑布视图。 正如我们在下面的屏幕截图中看到的在视图创建之后该片段向 10.0.2.2 执行 HTTP GET 请求这需要大约 130 毫秒。 在同一个瀑布中我们看到 HTTP 调用由 weather-backend 服务处理它本身对 api.open-meteo.com 进行 HTTP 调用。 现在当查看纽约被选为城市的请求的瀑布视图时我们看到后端服务发生错误这解释了为什么预测对 New York 不起作用。 通过单击红色的查看相关错误标记你将获得错误的详细信息和问题的实际根本原因。 天气后端的异常消息指出 “This service can only retrieve geo locations for European cities!” 这就是选择 New York 作为城市的问题。 手动检测 如前所述Elastic APM Android Agent 代表你为受支持的框架执行一系列自动检测 但是在某些情况下你可能希望根据应用的用例获得额外的检测。 对于这些情况你已经了解了 OpenTelemetry API它是 Elastic APM Android 代理的基础。 OpenTelemetry Java SDK 包含用于创建自定义 spans、 metrics 和 logs 的工具并且由于它是 Elastic APM Android 代理的基础因此你无需在项目中添加任何额外依赖项也无需配置任何内容即可使用它及将你的自定义信号连接到你自己的 Elastic 环境就像代理为你做的那样。 开始的方法是像这样获取 OpenTelemetry 的实例 OpenTelemetry openTelemetry GlobalOpenTelemetry.get();然后你可以按照 OpenTelemetry Java 文档中的说明创建自定义信号。 有关创建自定义 span 的示例请参见以下示例 ini 代码解读复制代码 1. OpenTelemetry openTelemetry GlobalOpenTelemetry.get(); 2. Tracer tracer openTelemetry.getTracer(instrumentation-library-name, 1.0.0); 3. Span span tracer.spanBuilder(my span).startSpan();5. // Make the span the current span 6. try (Scope ss span.makeCurrent()) { 7. // In this scope, the span is the current/active span 8. } finally { 9. span.end(); 10. }四、结论 在这篇博文中我们演示了如何使用 Elastic APM Android 代理在基于 Android 的移动应用程序中实现端到端的可观察性。 设置代理只需几分钟所提供的见解可让你分析应用的性能及其对后端服务的依赖性。 有了 Elastic APM Android Agent你可以利用 Elastic 丰富的 APM 功能以及各种可能性通过自定义检测和自定义仪表板来自定义你的分析工作流程。 你好奇吗 然后自己试试。 在 Elastic Cloud 上注册免费试用使用本博客中所述的 Elastic APM Android 代理丰富你的 Android 应用程序并探索 Elastic 的可观察性解决方案中的数据。
http://www.hkea.cn/news/14336169/

相关文章:

  • 沈阳哪个网站建设公司好网站流量数据
  • 中关村能力建设网站设计制作散发寄递
  • 北京建站优化公司企业官网建设的重要性
  • 台州seo网站排名杭州公司网站制作
  • 网站的验证码怎么做深圳网站建设有免费的吗
  • 做 英语试题的网站wordpress视频自动略图
  • pc端手机网站 viewport 自适应公司网站建设youyi51
  • 互联网公司网站建设ppt模板seo网站服务公司
  • 哪类小网站容易做网络系统分类
  • 网站开发流行语言大连高新园区邮编
  • wordpress做淘客网站北京网站开发的趋势在哪里
  • 外贸英语 网站智慧团建官网手机版登录
  • 唐汉网站建设如何有效的推广宣传
  • 将网页加入可信站点最新中高风险地区名单
  • 如何制作新型网站程序地方网站盈利
  • 腾讯云网站建设视频教程wordpress用户名或密码错误
  • dz系统怎么做地方网站义乌前十跨境电商公司
  • 网站增加权重湖南常德石门县
  • 网站链接优化怎么做广东深广东深圳网站建设服务
  • 空间ip地址访问网站福州网站推广定制
  • 河南小学网站建设礼品公司网站建设
  • 深圳建设材料价格网站仿木鱼网络网站
  • wordpress打印插件西安的网络优化公司
  • 房产门户网站平台搭建个人做哪方面的网站
  • 沈阳网站设计定制网站建设建设网站的编程过程
  • 百度做网站的公司社区类网站开发
  • nodejs做网站的弊端一般vs做的网站的总体框架
  • 手机适配网站建设棋牌网站流程
  • 免费企业网站建立服装网站建设公司哪家好
  • 电商网站建设实训步骤七台河新闻联播今天的