skywalking 简单操作文档

news2024/11/27 10:19:25

1.1. 基础概念

1.1.1. 概述

        SkyWalking是 apache基金会下面的一个开源 APM项目,为微服务架构和云原生架构系统设计。它通过探针自动收集所需的指标,并进行分布式追踪。通过这些调用链路以及指标,Skywalking APM会感知应用间关系和服务间关系,并进行相应的指标统计。Skywalking支持链路追踪和监控应用组件基本涵盖主流框架和容器,如国产 RPC Dubbo和 motan等,国际化的 spring boot,spring cloud。

        下面是 Skywalking的几大特点:多语言自动探针,Java,.NET Core和 Node.JS。多种监控手段,语言探针和 service mesh。轻量高效。不需要额外搭建大数据平台。模块化架构。UI、存储、集群管理多种机制可选。支持告警。优秀的可视化效果。

        Skywalking 提供 Tracing(跟踪)和 Metrics(指标)数据的获取和聚合。Metric的特点是,它是可累加的:他们具有原子性,每个都是一个逻辑计量单元,或者一个时间段内的柱状图。例如:队列的当前深度可以被定义为一个计量单元,在写入或读取时被更新统计;输入 HTTP请求的数量可以被定义为一个计数器,用于简单累加;请求的执行时间可以被定义为一个柱状图,在指定时间片上更新和统计汇总。Tracing的大特点就是,它在单次请求的范围内,处理信息。任何的数据、元数据信息都被绑定到系统中的单个事务上。例如:一次调用远程服务的 RPC执行过程;一次实际的 SQL查询语句;一次 HTTP请求的业务性 ID。总结,Metric主要用来进行数据的统计,比如 HTTP请求数的计算。Tracing主要包含了某一次请求的链路数据。

1.1.2. 优势

        Skywalking相比较其他的分布式链路监控工具,具有以下特点:社区相当活跃。Skywalking已经进入 apache孵化,目前的 start数已经超过 11K,新版本6.5.0已经发布。开发者是国人,可以直接和项目发起人交流进行问题的解决。Skywalking支持 Java,.NET Core和 Node.JS语言。相对于其他平台:比如 Pinpoint支持Java和PHP,具有较大的优势。探针无倾入性。对比 CAT具有倾入性的探针,优势较大。不修改原有项目一行代码就可以进行集成。探针性能优秀。有网友对 Pinpoint和 Skywalking进行过测试,由于 Pinpoint收集的数据过多,所以对性能损耗较大,而 Skywalking探针性能十分出色。支持组件较多。特别是对 Rpc框架的支持,这是其他框架所不具备的。Skywalking对 Dubbo、gRpc等有原生的支持,甚至连小众的 motan和 sofarpc都支持。

1.1.3. 主要概念

使用如下案例来进行 Skywalking主要概念的介绍,Skywalking主要概念包含:

  • 服务(service)
  • 端点(endpoint)
  • 实例(instance)

        上图中,我们编写了用户服务,这是一个 web项目,在生产中部署了两个节点:192.168.1.100和192.168.1.101。用户服务就是 Skywalking的服务(Service),用户服务其实就是一个独立的应用(Application),在 6.0之后的 Skywalking将应用更名为服务(Service)。用户服务对外提供的 HTTP接口/usr/queryAll就是一个端点,端点就是对外提供的接口。192.168.1.100和 192.168.1.101这两个相同服务部署的节点就是实例,实例指同一服务可以部署多个。

1.1.4. 开发需要注意的问题

        框架支持接入skywalking 作为链路监控,同时对于服务器资源不足的客户,也可以生成自定义的traceId(当然这种自定义的模块除了 能把日志串联起来,其他功能是没有的)

1、使用skywalking

增加配置luna.framework.starter.apm.skywalking.enable=true

2、使用自定义traceid

增加配置luna.framework.starter.apm.luna-trace.enable=true

        skywalking和自定义的traceId只能使用一个,默认开启的是skywalking,且两个只能有一个enable为true。一旦开启了自定义的traceId,skywalking的功能将失效。

1.2. 管理页面使用

        Skywalking的管理页面主要用于监控整个系统的状态,当出现问题时,可以快速的了解系统当前的情况,问题可能的原因。

1.2.1. 服务监控

        Skywalking可以监控服务的状态,当系统出现问题时,可以从一些关键参数,如延迟、请求成功率来快速定位问题出现的服务。

服务监控管理页面可以看到服务请求的整体状态:

1.2.2. 链路监控

链路监控处可以看到请求的具体耗时,请求的整体链路,可以快速帮助我们定位问题。

关于请求的链路有四种视图,列表、树结构、表格和 统计,可以清晰的看到整个请求链路的状态

1.2.3. 实例监控

        实例监控可以监控到具体的实例,也可以看到JVM占用的情况,当请求变慢等特殊情况出现时,可以通过分析实例JVM数据,辅助定位问题原因。

1.2.4. 端点监控

端点监控和上面的监控情况一致,可以帮助我们定位系统变慢等问题的原因。

如下,可以看到各个端点的一些数据:

1.2.5. 拓扑图

1.2.6. 告警

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1257295.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

酷开科技 | 酷开系统,让你与家人共度美好时光!

在日渐繁忙的生活中,我们常常会忽略和家人朋友的相处时光,有时候,我们亟需一种休闲方式,让家庭成员能够围坐在一起,享受无忧无虑的温馨和欢笑。酷开科技,致力于为消费者提供舒适的产品和服务内容&#xff0…

Windows11系统如何将此电脑和回收站图标放置在桌面上?

Windows11系统如何将此电脑和回收站图标放置在桌面上? 如下图所示,点击“开始”图标,,找到“设置”, 如下图所示,进入设置后,找到个性化—主题, 如下图所示,在个性化—主…

免费分享一套基于springboot的餐饮美食分享平台系统,挺漂亮的

大家好,我是java1234_小锋老师,看到一个不错的基于springboot的餐饮美食分享平台系统,分享下哈。 项目视频演示 【免费】基于springboot的餐饮美食分享平台 Java毕业设计_哔哩哔哩_bilibili【免费】基于springboot的餐饮美食分享平台 Java毕…

校园导游程序及通信线路设计(结尾附着总源码)

校园导游程序及通信线路设计 摘  要 新生或来访客人刚到校园,对校园的环境不熟悉。就需要一个导游介绍景点,推荐到下一个景点的最佳路径等。随着科技的发展,社会的进步,人们对便捷的追求也越来越高。为了减少人力和时间。针对对…

VMWare虚拟机ubuntu克隆打不开

ubuntu克隆打不开 复制的存有ubuntu克隆的文件夹,导入vmware打不开 说找不到这个文件,那就到目录把它的删掉 的删掉 换000001.vmdk后缀的

好用的基于layui的免费开源后台模版layuimini

发现一个好用的后台模版 基于layui的免费开源后台模版layuimini layuimini - 基于Layui的后台管理系统前端模板 easyadmin开源项目 EasyAdmin是基于ThinkPHP6.0Layui的快速开发的后台管理系统。 演示站点 演示地址:跳转提示(账号:admin&a…

C++学习之路(六)C++ 实现简单的工具箱系统命令行应用 - 示例代码拆分讲解

简单的工具箱系统示例介绍: 这个示例展示了一个简单的工具箱框架,它涉及了几个关键概念和知识点: 面向对象编程 (OOP):使用了类和继承的概念。Tool 是一个纯虚类,CalculatorTool 和 FileReaderTool 是其派生类。 多态&#xff1…

JavaScript WebApi(二) 详解

监听事件 介绍 事件监听是一种用于在特定条件下执行代码的编程技术。在Web开发中,事件监听器可以用于捕获和响应用户与页面交互的各种操作,如点击、滚动、输入等。 事件监听的基本原理是,通过在特定元素上注册事件监听器,当事件…

Elastic Search的RestFul API入门:初识mapping

本节课旨在探讨Elasticsearch中Mapping的使用。在Elasticsearch中,Mapping是定义索引中字段(Field)的数据类型和属性的过程。它为Elasticsearch提供了一种途径,以解析和处理文档中的各个字段,以便在搜索、排序和聚合等…

【开源】基于Vue和SpringBoot的个人健康管理系统

项目编号: S 040 ,文末获取源码。 \color{red}{项目编号:S040,文末获取源码。} 项目编号:S040,文末获取源码。 目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 健康档案模块2.2 体检档案模块2.3 健…

前端入门(三)Vue生命周期、组件原理、脚手架、插槽插件、存储、组件事件、动画、跨域与代理

文章目录 Vue生命周期Vue 组件化编程 - .vue文件非单文件组件组件的注意点组件嵌套Vue实例对象和VueComponent实例对象Js对象原型与原型链Vue与VueComponent的重要内置关系 应用单文件组件构建 Vue脚手架 - vue.cli项目文件结构组件相关高级属性引用名 - ref数据接入 - props混…

Linux常用命令——bc命令

在线Linux命令查询工具 bc 算术操作精密运算工具 补充说明 bc命令是一种支持任意精度的交互执行的计算器语言。bash内置了对整数四则运算的支持,但是并不支持浮点运算,而bc命令可以很方便的进行浮点运算,当然整数运算也不再话下。 语法 …

【Kotlin】内联函数

文章目录 内联函数noinline: 避免参数被内联非局部返回使用标签实现Lambda非局部返回为什么要设计noinline crossinline具体化参数类型 Kotlin中的内联函数之所以被设计出来,主要是为了优化Kotlin支持Lambda表达式之后所带来的开销。然而,在Java中我们似…

NBIot 平台篇③OneNET物联网平台

NBIot 平台篇③OneNET物联网平台 1、平台介绍:2、平台注册与登录:3、创建产品:4、添加设备:5、设备调试:1、平台介绍: (1)、OneNET物联网开放平台是中国移动打造的面向产业互联和智慧生活应用的物联网PaaS平台,OneNET支持适配各种网络环境和协议类型,可实现各种传感…

【腾讯云云上实验室】用向量数据库在金融信用数据库分析中的实战运用

一、前言 这篇文章将带领读者探索数据库的多样化解决方案及其演进历程,特别关注向量数据库的重要性和在实际项目中的应用。 通过深入剖析腾讯云向量数据库及其在金融信用数据库分析中的实战运用,为读者提供全面而实用的指南,帮助他们理解、…

GitHub 信息动态统计:让你的 Readme 更具吸引力 | 开源日报 No.87

anuraghazra/github-readme-stats Stars: 59.4k License: MIT GitHub Readme Stats 是一个开源项目,它可以在 README 文件中动态生成 GitHub 统计数据。该项目的主要功能包括: GitHub 统计卡片:显示 stars、commits 和 pull requests 等公共…

2016年五一杯数学建模C题二孩政策问题解题全过程文档及程序

2016年五一杯数学建模 C题 二孩政策问题 原题再现 多年来实施的严、紧计划生育政策对控制人口增长起到关键作用。在优生优育政策的指引下,我国人口质量显著提高,但也带来了不利影响,生育率偏低、男女比例失衡、人口老龄化情况严重等问题。2…

数组与链表

作者简介:大家好,我是smart哥,前中兴通讯、美团架构师,现某互联网公司CTO 联系qq:184480602,加我进群,大家一起学习,一起进步,一起对抗互联网寒冬 除了HashMap&#xff0…

MATLAB中corrcoef函数用法

目录 语法 说明 示例 矩阵的随机列 两个随机变量 矩阵的 P 值 相关性边界 NaN 值 corrcoef函数的功能是返回数据的相关系数。 语法 R corrcoef(A) R corrcoef(A,B) [R,P] corrcoef(___) [R,P,RL,RU] corrcoef(___) ___ corrcoef(___,Name,Value) 说明 R corrc…

geemap学习笔记014:加载本地的tif文件

前言 Colab中似乎没法直接加载云盘中的数据,但是可以先上传到GEE中的assets中,再加载本地的数据。下面是以这个数据为例进行展示。 1 上传数据 首先将本地的tif数据上传到Asset中,得到独一的Image ID。 2 加载数据 使用ee.Image加载数据 …