Monitor 采集方式

  • 读取 /proc
  • 命令行
  • 黑盒探测
  • 拉取协议
    • 目标命令

采集方法 : 读取 /proc 目录、执行系统调用、执行命令行工具、远程黑盒探测、远程拉取特定协议的数据

读取 /proc

/proc : 在内存中的伪文件系统,保存 Linux 的运行数据,如 : 内存数据、网卡流量、机器负载

内存相关指标 :

  • Gauge 类型
cat /proc/meminfoMemTotal:        7954676 kB
MemFree:          211136 kB
MemAvailable:    2486688 kB
Buffers:          115068 kB
Cached:          2309836 kB
...

网卡流量相关指标 :

  • Counter 类型 : 启动后的累计值
  • irate 二次计算
head -n3 /proc/net/dev--         入方向                                                                                                         出方向
Inter-|   Receive                                                  |  Transmitface | bytes    packets errs drop fifo frame compressed multicast  | bytes    packets errs drop fifo colls carrier compressedeth0: 697407964307 2580235035    0    0    0     0          0         0 1969289573661 3137865547    0    0    0     0       0          0

命令行

获取 9090 端口的监听状态 :

ss -tln | grep 9090

查看分区使用率 :

df -k

缺点 :

  • 通用性 : 各命令行,由于版本不一样,输出格式也不愿意
  • 性能问题 : 命令行要 fork 进程,性能较低

黑盒探测

黑盒监控 : 把监控对象当黑盒子,不了解内部运行机理,只做简单探测

  • 探测手段 : ICMP、TCP、HTTP
  • 产品 : Blackbox Exporter 、Categraf、Datadog-Agent

Ping :

  • ICMP 协议
ping -c 3 www.baidu.com#....
#  3个数据包                                                        丢包率
3 packets transmitted, 3 received, 0% packet loss, time 2003ms
rtt min/avg/max/mdev = 1.382/1.393/1.405/0.009 ms

TCP 探测 :

telnet www.baidu.com 22

HTTP 探测 : 测试连通性,和 response body 是否有 success

拉取协议

拉取 Elasticsearch 的 /_cluster/health 接口

curl -ucpucode:cpu123 http://cpucode:9200/_cluster/health -s | jq .{"cluster_name": "elasticsearch-cluster","status": "yellow","timed_out": false,"number_of_nodes": 3,"number_of_data_nodes": 3,"active_primary_shards": 430,"active_shards": 430,"relocating_shards": 0,"initializing_shards": 0,"unassigned_shards": 430,"delayed_unassigned_shards": 0,"number_of_pending_tasks": 0,"number_of_in_flight_fetch": 0,"task_max_waiting_in_queue_millis": 0,"active_shards_percent_as_number": 50
}

目标命令

查看 MySQL 连接情况 :

  • Threads_connected : 当前有多少连接
  • Max_used_connections : 曾经最多有多少连接
  • Connections : 总计接收过多少连接
show global status like '%onn%';+-----------------------------------------------+---------------------+
| Variable_name                                 | Value               |
+-----------------------------------------------+---------------------+
| Aborted_connects                              | 3212                |
| Connection_errors_accept                      | 0                   |
| Connection_errors_internal                    | 0                   |
| Connection_errors_max_connections             | 0                   |
| Connection_errors_peer_address                | 0                   |
| Connection_errors_select                      | 0                   |
| Connection_errors_tcpwrap                     | 0                   |
| Connections                                   | 3281                |
| Locked_connects                               | 0                   |
| Max_used_connections                          | 13                  |
| Max_used_connections_time                     | 2022-10-30 16:41:35 |
| Performance_schema_session_connect_attrs_lost | 0                   |
| Ssl_client_connects                           | 0                   |
| Ssl_connect_renegotiates                      | 0                   |
| Ssl_finished_connects                         | 0                   |
| Threads_connected                             | 1                   |
+-----------------------------------------------+---------------------+
16 rows in set (0.01 sec)

查看 MySQL 连接变量 :

  • max_connections : 最大连接数,默认 : 151
show global variables like '%onn%';+-----------------------------------------------+-----------------+
| Variable_name                                 | Value           |
+-----------------------------------------------+-----------------+
| character_set_connection                      | utf8            |
| collation_connection                          | utf8_general_ci |
| connect_timeout                               | 10              |
| disconnect_on_expired_password                | ON              |
| init_connect                                  |                 |
| max_connect_errors                            | 100             |
| max_connections                               | 5000            |
| max_user_connections                          | 0               |
| performance_schema_session_connect_attrs_size | 512             |
+-----------------------------------------------+-----------------+
9 rows in set (0.01 sec)

查看 Redis 内存指标 :

info memory# Memory
used_memory:1345568
used_memory_human:1.28M
used_memory_rss:3653632
used_memory_rss_human:3.48M
used_memory_peak:1504640
used_memory_peak_human:1.43M
used_memory_peak_perc:89.43%
used_memory_overhead:1103288
used_memory_startup:1095648
used_memory_dataset:242280
used_memory_dataset_perc:96.94%
...

Monitor 采集方式相关推荐

  1. ICL7135的串行采集方式在单片机电压表中的应用

    ICL7135的串行采集方式在单片机电压表中的应用 文章作者:严仍友 汪仁煌 文章类型:设计应用 文章加入时间:2003年10月22日1:3 文章出处:国外电子元器件 摘要:介绍了对A/D芯片ICL7 ...

  2. 脑电采集理论基础:脑电信号采集方式、分类及特点、伪迹、导联

    此博客为个人博客,不涉及商业用途,仅提供学习参考,内容均来自个人原创以及互联网转载和摘录. 此博客上带有原创标识的文章.图片.文件等,未经本人允许,不得用于商业用途以及传统媒体. 本文首发于CSDN, ...

  3. PIGOSS BSM 监控系统采集方式Agent 3.0技术与使用简介

    一:概述 PIGOSS IT综合运维管理平台通过多种采集方式实现不同平台, Agent作为其中一种采集方式,在数据的采集部分则是担当了至关重要的角色:大部分设备都能通过此采集方式实现指标数据采集. 初 ...

  4. 数据采集工具之Flume的常用采集方式详细使用示例

    数据采集工具之Flume的常用采集方式详细使用示例 Flume Flume概述 Flume架构 核心的组件 常用Channel.Sink.Source类型 Flume架构模式 安装Flume Flum ...

  5. 日志采集方式 SNMP TRAP 和 Syslog 的区别

    摘要: 日志文件能够详细记录系统每天发生的各种各样的事件,对网络安全起着非常的重要作用.网络中心有大量安全 设备,将所有的安全设备逐个查看是非常费时费力的.另外,由于安全设备的缓存器以先进先出的队列模 ...

  6. 数据采集系统有哪几种采集方式?

    1.设备类: 指从传感器和其它待测设备等模拟和数字被测单元中自动采集信息的过程.数据采集系统是结合基于计算机的测量软硬件产品来实现灵活的.用户自定义的测量系统.比如条码机.扫描仪等都是数据采集工具(系 ...

  7. mysql采集方式_数据采集的几种方法

    数据采集的背景 用户每天通过不同的终端设备在系统A上做出一系列的操作,比如在新闻系统上的看一些文章,进行收藏或者点赞.评论等等,会触发A系统下不同的微服务,如abc等,如何记录好用户的行为信息,并将其 ...

  8. 你知道大数据中的五种采集方式吗?

    1.什么是采集 在一般的分层业务系统中,数据采集都是一个非常重要的部分:主要负责数据的输入. 2.为什么需要采集 在传统的管理系统中,一般的业务系统都是采集,存储,显示 ,报表,这是传统分层模型下的架 ...

  9. 使用phpQuery采集图片示例–php采集方式之一

    下载地址:http://code.google.com/p/phpquery/ 链接:https://pan.baidu.com/s/16uaFFwKtcdo6xBAqGl-_cw 提取码:xm9f ...

最新文章

  1. 解读《这就是 OKR》 | 你制定的 OKR 真的合格吗?
  2. Django与数据库操作
  3. Java—关于单例模式的实现方式
  4. linux 内核配置过程中遇到的问题
  5. Android桌面悬浮窗仿QQ手机管家加速效果
  6. 【BZOJ3831】Little Bird,单调队列优化DP
  7. 应用联合服务 云计算拉近应用和操作距离
  8. ai的预览模式切换_当AI频繁切换色彩预览模式时 颜色会越变越深 求解?
  9. java 弱引用 使用场景_Java 强软弱虚引用介绍及使用场景
  10. DisGeNet:疾病相关的基因与突变位点数据库
  11. 小白教程系列——MultiDesk连接服务器
  12. 总时差与自由时差的计算
  13. Git报错:Git failed with a fatal error. Git failed with a fatal error. Need to specify how to reconcile
  14. PHP全站开发工程师-第04章 PHP基础语法
  15. 阿尔法c语言程序设计考试题,计算机考试习题
  16. 微信小程序如何开通支付功能?
  17. CSS设置元素的透明度(不透明度)
  18. sip转webrct
  19. Unity 游戏框架搭建 2019 (四十五) 独立的方法和独立的类
  20. 提升成都文化产业竞争力的钻石体系

热门文章

  1. PS188——谱瑞(Parade)推动的 Type-C扩展坞红海战略
  2. 如何在IDEA中导入eclipse项目
  3. Zephyr-WEST工具
  4. Python-修改密码功能
  5. IPv6基础介绍及常用命令盘点
  6. 月份和星期的英语(请不要再弄错了)
  7. win7设置定时锁定计算机,Win7系统怎么设置锁屏?Win7系统设置电脑锁屏的方法
  8. 解决项目Unable to find GatewayFilterFactory with name CacheRequestFilter错误
  9. 100代码搞定C语言游戏开发,编程原来如此简单
  10. 卷积和反卷积(deconv)