关于cacti监控-如何理解cacti统计图表的数据-cacti流量图怎么看及linux下svn常用管理命令及svn忽略文件目录-设置vimdiff来比较差异

一、关于cacti监控-如何理解cacti统计图表的数据-cacti流量图怎么看

    Cacti是一套基于PHP,MySQL,SNMP及RRDTool开发的网络流量监测图形分析工具,是用php语言实现的一个软件,它的主要功能是用snmp服务获取数据,然后用rrdtool储存和更新数据,当用户需要查看数据的时候用rrdtool生成图表呈现给用户。snmp和rrdtool是cacti的关键。Snmp关系着数据的收集,rrdtool关系着数据存储和图表的生成。

关于Cacti上的图表,对一般的WEB服务器来说,几个重要的数据包括网卡流量监控、CPU、内存使用率监控以及服务器负载。对于CPU、内存使用率、负载的数据比较容易理解,对于网卡流量的监控稍微多了点东西,如下图:

    这是连续7天的一个cacti流量监控统计图表,流量图上有两条线分别是inbound和outbound,字段意思是入境和出境。放在这里就是流入流量和流出流量。后面分别显示了当前(current),平均(average),峰值(maximum)的三个数据。服务器的流量图是分网卡的,如图顶上的eth1,这表示对应的是服务器里的eth1网卡,可以进服务器使用ifconfig查看,一般eth0是外网,eth1是内网即局域网中的请求处理数据。具体内网外网需查看服务器的IP配置。

    比如:你向一个域名请求内容,域名解析到一台WEB服务器,然后这个WEB服务器去mysql读取数据内容(内网连接),另外还读取了redis数据(内网),同时请求处理中还涉及了对另外一个第三方接口的数据调用,然后服务器处理完后将数据发给你,在这个过程中。这台WEB服务器有以下几个部分:
1:外网inbound流量 :你向服务器发起的请求数据;第三方接口响应的内容。
2:外网outbone流量 :服务器向你响应的数据;向第三方接口请求时发送的数据。
3:内网inbound流量 :mysql查询得到的数据,redis请求得到的数据。
4:内网outbond流量 :向mysql查询发送的数据,向redis请求发送到的数据。

cacti上可以查看图片的绘制命令:示例:

/usr/bin/rrdtool graph - \
--imgformat=PNG \
--start='1500220800' \
--end='1500825599' \
--title='192.168.168.168 - Traffic - eth1' \
--rigid \
--base='800' \
--height='120' \
--width='600' \
--alt-autoscale-max \
--lower-limit='0' \
COMMENT:"From 2017/07/17 00\:00\:00 To 2017/07/23 23\:59\:59\c" \
COMMENT:"  \n" \
--vertical-label='bits per second' \
--slope-mode \
--font TITLE:10: \
--font AXIS:7: \
--font LEGEND:8: \
--font UNIT:7: \
DEF:a='/var/www/html/cacti/rrd/168.rrd':'_in':AVERAGE \
DEF:b='/var/www/html/cacti/rrd/168.rrd':'_out':AVERAGE \
CDEF:cdefa='a,8,*' \
CDEF:cdefe='b,8,*' \
AREA:cdefa#00CF00FF:'Inbound'  \
GPRINT:cdefa:LAST:' Current\:%8.2lf %s'  \
GPRINT:cdefa:AVERAGE:'Average\:%8.2lf %s'  \
GPRINT:cdefa:MAX:'Maximum\:%8.2lf %s\n'  \
LINE1:cdefe#002A97FF:'Outbound'  \
GPRINT:cdefe:LAST:'Current\:%8.2lf %s'  \
GPRINT:cdefe:AVERAGE:'Average\:%8.2lf %s'  \
GPRINT:cdefe:MAX:'Maximum\:%8.2lf %s\n' 

    其它图表比较好认识,因为都只有一项数据。负载图表列出了5,10,15分钟的统计数据,内存统计了cache和buffer的数据,对CPU图表。一共有五个关于CPU的指标。分别如下:

System:内核空间CPU使用。System表示:CPU花了多少比例的时间在内核空间运行。分配内存、IO操作、创建子进程……都是内核操作。这也表明,当IO操作频繁时,System参数会很高。
User:User表示CPU一共花了多少比例的时间运行在用户态空间或者说是用户进程(running user space processes)。典型的用户态空间程序有:Shells、数据库、web服务器
Nice:有种nice进程是指改变过优先级的进程,我理解这里的Nice就是这些被改变过优先级的进程占用的CPU资源。
Wait:当读写磁盘的操作远比CPU运行的速度要慢,CPU负载处理数据,而数据一般在磁盘上需要读到内存中才能处理。当CPU发起读写操作后,需要等着磁盘驱动器将数据读入内存(可参考:JAVA IO 以及 NIO 理解),从而导致CPU 在等待的这一段时间内无事可做。CPU处于这种等待状态的时间由Wait参数来衡量。
Idel:CPU处于空闲状态时间比例。
一般而言,idel + user + nice 约为100%

二、linux下svn常用管理命令及svn忽略文件目录-设置vimdiff来比较差异

1. svn比较常用的命令和其它命令:

#简写:     完整                解释
svn add     svn add file|dir    --添加文件或目录
svn co      svn checkout        --获取svn代码
svn up      svn update          --更新
svn ci      svn commit          --提交代码修改
    -m 指定提交修改备注
svn delete (del, remove, rm)    --删除文件
svn st/stat svn status          --查看本地修改情况:列出本地修改或增加的文件信息
svn log     svn log             --查看提交日志
    -l number 指定只显示最近的几条日志
svn info    svn info            --查看当前的svn信息,会显示svn库的URL,最新版本和最后提交时间
svn di      svn diff            --将本地代码和svn上进行对比,可指定文件
    svn diff -r 版本号 文件名   --比较本地文件和某版本号此文件
    svn diff -r 23:24           --比较版本23和版本24
    svn diff -r 23:24  文件名   --比较某文件的版本23和版本24
svn revert  svn revert          --撤销本地修改
svn help [command]              --查看svn帮助,或特定命令帮助
svn merge   -- 合并svn和本地代码
svn resolve -- 合并冲突代码
svn cat -r 版本号 文件名        --显示特定版本的某文件内容。
svn list(ls)                    --显示svn下目录列表
svn list -v                 --查看每一个目录最后更新的人、版本、时间

    如果在使用时想了解更多的参数,可使用 svn --help 或者 svn 命令 --help 或者 svn help 命令查看具体的参数和意义。

#svn其它一些命令
svn blame (praise, annotate, ann)
svn changelist (cl)
svn cleanup
svn copy (cp)
svn export
svn import
svn lock
svn mergeinfo
svn mkdir
svn move (mv, rename, ren)
svn propdel (pdel, pd)
svn propedit (pedit, pe)
svn propget (pget, pg)
svn proplist (plist, pl)
svn propset (pset, ps)
svn resolved
svn switch (sw)
svn unlock

2. 关于SVN使用时的小项功能

    使用svn时有两项需要知道:一是文件忽略功能,二是使用vimdiff比较。首先知晓一下svn的配置文件路径:~/.subversion/config

A,设置忽略目录或文件,在svn的根目录下使用命令:

    svn propedit svn:ignore . #注意最后的点号表示当前目录不能少
    此时会打开vim编辑器,让你编辑这个文件,即告诉svn哪些目录或者目录应该被忽略,可能会有报错:
    svn: None of the environment variables SVN_EDITOR, VISUAL or EDITOR are set, and no 'editor-cmd' run-time configuration option was found
    说明没有给svn的忽略目录设置文件指定使用什么来编辑,可执行如下这行命令,或者将这行命令写入到启用脚本:~/.bash_profile中
    export SVN_EDITOR=vim
    也可以直接修改SVN的配置文件:修改这行为:editor-cmd=vim 即可实现。
    如写到启用脚本保存退出,则可执行命令source ~/.bash_profile来使配置文件立即生效。成功打开文件后一行编写一个忽略的目录或文件即可。保存后会有提示svn:ignore已经修改,此时再执行svn commit提交即可。
    
B. 使用vim的vimdiff来比较文件,而不要使用svn diff的默认比较
    可以在配置目录:~/.subversion/中添加文件diff.sh ,并修改diff.sh的权限为0777,其内容如下:

#!/bin/sh
shift 5 # 去掉前5个参数
vimdiff "$@"  # 使用vimdiff比较

 然后修改svn配置文件: ~/.subversion/config 找到如下配置:
diff-cmd = diff_program (diff, gdiff, etc.)
将其修改为
diff-cmd = /root/.subversion/diff.sh  #此处需要是绝对路径
这样svn diff命令就会默认使用vimdiff比较文件。vimdiff界面会分左右屏显示,并有颜色区分修改,非常方便。

  • 8
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

林戈的IT生涯

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值