<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>goruby (GoRuby)</title>
    <link>https://ruby-china.org/goruby</link>
    <description></description>
    <language>en-us</language>
    <item>
      <title>写了一个单机监控工具</title>
      <description>&lt;h4 id="它是个啥？"&gt;它是个啥？&lt;/h4&gt;
&lt;p&gt;这是我们团队正在写的监控系统的一部分
这是一个用 golang 写的小工具，没有任何部署依赖
这只是一个采集 linux 基础数据并做简单展示的 agent，不会报警的哦&lt;/p&gt;
&lt;h4 id="它可以采集哪些数据？"&gt;它可以采集哪些数据？&lt;/h4&gt;
&lt;p&gt;机器基本数据，比如 kernel version，uptime，hostname 等等
cpu 使用情况：比如 idle、user、nice、system、iowait、irq、softirq、steal、guest 的当前占比
memory 使用情况，used 了多少，free 是多少，total 是多少
当前 loadavg 是多少
磁盘占用情况，各个分区、设备的使用情况；以及磁盘 io 的情况，类似 iostat 的数据，比如 await/svctm/%util 等等
网络使用情况，比如各个网卡当前带宽情况、每秒丢包多少&lt;/p&gt;
&lt;h4 id="它长什么样？"&gt;它长什么样？&lt;/h4&gt;
&lt;p&gt;&lt;img src="//l.ruby-china.com/photo/2014/8399942ec68acc8d9b2cb8119475c864.png" title="" alt=""&gt;
&lt;img src="//l.ruby-china.com/photo/2014/4c572f3cb417c1ec64c5ddca8af6f300.png" title="" alt=""&gt;&lt;/p&gt;
&lt;h4 id="它怎么部署？"&gt;它怎么部署？&lt;/h4&gt;
&lt;p&gt;项目本身分三部分：
goutil：是一个 go 的工具箱，都是些常用的方法类，没啥可说的
falcon：一些列采集函数
falcon-eye：利用 falcon 中的采集函数采集数据做展示
看看代码中 import 就知道喽，很简单的
so，只要找个机器下载一个 golang 的语言包，编译一下就行了，在项目（ &lt;a href="https://github.com/UlricQin/falcon-eye" rel="nofollow" target="_blank"&gt;https://github.com/UlricQin/falcon-eye&lt;/a&gt; ）的 readme 中有相关命令&lt;/p&gt;
&lt;h4 id="可以用它干什么？"&gt;可以用它干什么？&lt;/h4&gt;
&lt;p&gt;可以部署到各个单机，每次报警了之后打开这个页面看看各项指标
可以改造它让它支持更多数据采集函数，展示你关心的数据
可以写一个后端 server，给 falcon-eye 加一个 push 功能，每隔几秒钟采集数据 push 给后台 server，在 server 做报警和图表展示&lt;/p&gt;</description>
      <author>goruby</author>
      <pubDate>Wed, 02 Apr 2014 18:04:44 +0800</pubDate>
      <link>https://ruby-china.org/topics/18345</link>
      <guid>https://ruby-china.org/topics/18345</guid>
    </item>
  </channel>
</rss>
