prtg

http://www.paessler.com/prtg/features

prtg的sensor技术

数据库监视

Flexible Alerting

  • 9 notification technologies: Send Email, SMS/Pager, syslog and SNMP Trap, HTTP request, Event log entry, Play alarm sound files, Amazon SNS, any external technology that can be triggered by an EXE or batch file
  • Status alerts (up, down, warning)
  • Limit alerts (value above/below x)
  • Threshold alerts (above/below x for y minutes)
  • Multiple condition alerts (x and y are down)
  • Escalation alerts (extra notifications every x min during downtime)
  • Dependencies (avoid alarm floods)
  • Acknowledge Alarms (no more notifications for this alarm)
  • Alert Scheduling (no low priority alerts at night)

通知投递  告诉prtg如何发送消息

通知    定义消息的类别与内容

通知触发  

prtg api编程

<prtg>
<text>
</text>
<error>
</error>
<result>
</result>
</prtg>

<prtg>
<result>
<channel>a</channel>
<value>10</value>
</result>
<result>
<channel>b</channel>
<value>20</value>
</result>
</prtg>

[root@109-com1 scripts]# cat rx
#!/bin/bash
eth=eth0
RXpre=$(ifconfig ${eth} | grep bytes | awk  '{print $2}'| awk -F":" '{print $2}')
TXpre=$(ifconfig ${eth} | grep bytes | awk '{print $6}' | awk -F":" '{print $2}')
sleep 1
RXnext=$(ifconfig ${eth} | grep bytes | awk  '{print $2}'| awk -F":" '{print $2}')
TXnext=$(ifconfig ${eth} | grep bytes | awk '{print $6}' | awk -F":" '{print $2}')

echo "0:$(((${RXnext}-${RXpre})/1024)):recv!!!KB/s"

[root@109-com1 scripts]# cat daxiao
#!/bin/bash
daxiao=`ls -l  /var/log/asterisk/messages |cut -d " " -f5`
echo "0:$daxiao:messages!!!!!!!"

prtg change web default sound  
1.mp3与ogg同时替换命名为beep
2.并且要将mp3转换为ogg格式
3.清空浏览器缓存

prtg邮件发送三步走
1.通知投递,设置smtp地址与用户名与密码
2.通知
3.触发

prtg api
ASAP as soon as possible
172.16.1.14:8080

prtg
live graph 2小时120个值,1分钟扫描间隔
2天

SSH Script sensors

only one channel per sensor

The returned data for standard SSH Script sensors must be in the following format:
returncode:value:message

Value has to be a 64 bit integer or float and will be used as the resulting value for this sensor (e.g. bytes, milliseconds, etc.),
message can be any string and will be stored in the database.

[%sitename] %device %name %status %down (%message)

C:\ProgramData\Paessler\PRTG Network Monitor\

#!/bin/bash

port="80"
service="WEB"

NETSTAT=`which netstat`
ID=`which id`

die(){
    exit 999
}

is_root(){
    local id=$($ID -u)
    if [ $id -ne 0 ]
    then
        echo "4:500:You have to be root to run $0."    # returncode 4 = put sensor in DOWN status
        die
    fi
}

preparation(){
    if [ ! -x $NETSTAT ]
    then
        echo "2:500:netstat not found."
        die
    fi
    if [ ! -x $ID ]
    then
        echo "2:500:id not found."    # returncode = 2 = put sensor in DOWN status
        die
    fi
    is_root
}

check_service(){
    serviceIsRunning=false
    openPorts=$($NETSTAT -tulpn | grep -vE '^Active|Proto' | grep 'LISTEN' | awk '{ print $4}' | awk -F: '{print $NF}' | sed '/^$/d' | sort -u)
    for openPort in $openPorts
    do
        if [ "$port" == "$openPort" ]
        then
            serviceIsRunning=true
            echo "0:200:$service is running."    # returncode 0 = put sensor in OK status
            break
        fi
    done
    if [ $serviceIsRunning == false ]
    then
        echo "1:404:$service is not running."    # returncode 1 = put sensor in WARNING status
    fi
}

main(){
    preparation
    check_service
}

main

These few lines cover a lot of simple service check needs.
Here's a super simple service check script I'm using on Ubuntu systems. When you set it up in PRTG, just put the service name you want to check in the parameter box.
That becomes $1 in the script. $? is the status of the service as reported by the service command.
This is all assembled in the echo to be formatted to make PRTG show pretty and informative results.

#!/bin/sh

service $1 status 2>&1 1>/dev/null

if [ $? -ne 0 ]; then
  echo "1:$?:$1 down"
else
  echo "0:$?:OK"
fi

prtg的更多相关文章

  1. PRTG测试!

    http://www.paessler.com/prtg. 我的效果图:

  2. PRTG参考价格

    2010年的香港的网站上看到如下价格:http://kb.option-hk.com/?tag=prtg-network-monitor 什么才算一个sensor What counts as a s ...

  3. 使用PRTG和panabit结合定位网络阻塞的来源

    一.背景   在网络管理工作中,有时会出现网络阻塞,需要定位阻塞来源以采取措施解决问题.二.以一个网络阻塞案例说明定位方法   案例:某企业日常使用多条网络线路,某一段时间发现某条线路传输速率下降,对 ...

  4. PRTG安装

    1.去官网下载,记录下试用秘钥,然后执行安装 2. 3. 4.输入秘钥 5. 6.安装完成后自动转到如下页面,点击启动Guru 7. 8. 9. 10.输入prtgadmin,密码prtgadmin ...

  5. opsview

    nagios,cacti,opsview,prtg,zabbix http://www.opsview.com 1.需要注册一个账号,createyuan#sohu.com

  6. linux服务之crond

    use the following command add entries to crontab should take effect right away. right away(立即,立刻) #c ...

  7. linux知识点

    通过gui来使用通过api来使用通过cli来使用通过tui来使用 进程不在,但tcp连接还一直存在的解决办法--tcpkill命令 http://www.centoscn.com/CentOS/Int ...

  8. 虚拟化之vmware-vsphere (web) client

    两种客户端 vsphere client 配置>软件>高级设置里的变量 uservars.supressshellwarning=1 vsphere web client 安装完vSphe ...

  9. shell之脚本片断

    16. 以下是平台信息 CentOS Linux release 7.1.1503 (Core) Linux mysql-dev1 3.10.0-229.el7.x86_64 #1 SMP Fri M ...

随机推荐

  1. java 集合归类

    对java的集合一直是停留在使用的角度,没有进行系统的归纳,趁现在比较空闲,归纳一下. 1  集合的层次关系 最顶层的有三个集合,其中一个类,两个接口, 一个类是Arrays,两个接口是Collect ...

  2. (spring-第1回【IoC基础篇】)Spring容器中Bean的生命周期

    日出日落,春去秋来,花随流水,北雁南飞,世间万物皆有生死轮回.从调用XML中的Bean配置信息,到应用到具体实例中,再到销毁,Bean也有属于它的生命周期. 人类大脑对图像的认知能力永远高于文字,因此 ...

  3. Ubuntu封装制作ISO镜像

    首先下载Remastersys的Deb软件包 链接:http://pan.baidu.com/s/1i3tYPKT 密码: 使用命令强制安装 dpkg --force-all -i remasters ...

  4. HttpApplication 类,HttpApplicationState 类

    HttpApplication 类 定义 ASP.NET 应用程序中的所有应用程序对象共有的方法.属性和事件.此类是用户在 Global.asax 文件中所定义的应用程序的基类. https://ms ...

  5. IOS开发-几种截屏方法

    IOS开发-几种截屏方法 1.        UIGraphicsBeginImageContextWithOptions(pageView.page.bounds.size, YES, zoomSc ...

  6. Candy Distribution_找规律

    Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 6012   Accepted: 3341 Description N chi ...

  7. java作业5

    (一)用你的大数类实现加和减两个功能(乘除阶乘未实现) import java.util.Scanner; import java.io.IOException; import java.io.Inp ...

  8. array_intersect() php筛选两个数组共有的元素

    我们已经讲过如何筛选出连个数组中不共有的元素,今天就来看看php如何筛选出两个数组中共有的元素,例如筛选$array1和$array2共有的元素. 函数名:array_intersect(): 调用方 ...

  9. Python漫谈-比较运算符和类的神奇方法

    昨天遇到一个Python问题,今天好奇试了一下 >>> a = {1:23,'ab':56} >>> b = {2:22,'ab':57} >>> ...

  10. java 读取文件的常用方式

    1.读取: public class ReadFromFile { /** * 以字节为单位读取文件,常用于读二进制文件,如图片.声音.影像等文件. */ public static void rea ...