ARR状态监控脚本

#####################################################################################
# THIS IS SAMPLE CODE AND IS ENTIRELY UNSUPPORTED. THIS CODE AND INFORMATION        #
# IS PROVIDED "AS-IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED,    #
# INCLUDING BUT NOT LIMITED TO AN IMPLIED WARRANTY OF MERCHANTABILITY AND/OR        #
# FITNESS FOR A PARTICULAR PURPOSE.                                                 #
#####################################################################################
 
# First add a reference to the MWA dll
$dll=[System.Reflection.Assembly]::LoadWithPartialName("Microsoft.Web.Administration")
 
#Get the manager and config object
$mgr = new-object Microsoft.Web.Administration.ServerManager
$conf = $mgr.GetApplicationHostConfiguration()
 
#Get the webFarms section
$section = $conf.GetSection("webFarms")
$webFarms = $section.GetCollection()
 
 
foreach ($webFarm in $webFarms)
{
    $Name= $webFarm.GetAttributeValue("name");
    #Get the servers in the farm
    $servers = $webFarm.GetCollection()
    Write-Host  "Farm Name: " $Name
    foreach($server in $servers)
    {
         $ip= $server.GetAttributeValue("address")
         #Get the ARR section
         $arr = $server.GetChildElement("applicationRequestRouting")
         $counters = $arr.GetChildElement("counters")
         $isHealthy=$counters.GetAttributeValue("isHealthy")
         $state= $counters.GetAttributeValue("state")
         switch ($state) 
         { 
                0 {$state= "Available"} 
                1 {$state= "Drain"} 
                2 {$state= "Unavailable"} 
                default {$state= "Non determinato"}
         }
 
        if( $isHealthy)
        {
            $isHealthy="Healthy"
        }
        else
        {
            $isHealthy="Not Healthy"
        }        
         Write-Host -NoNewLine $ip  " " $state " " $isHealthy
         #NEW LINE
         Write-Host
    }
    #NEW LINE
    Write-Host
}

Output shows all web farms installed on your server plus the status of each application server.

From:http://blogs.msdn.com/b/carmelop/archive/2013/04/29/how-to-monitor-application-request-routing-via-powershell.aspx

ARR状态监控脚本

时间: 2024-10-10 04:48:55

ARR状态监控脚本的相关文章

weblogic状态监控脚本

echo "======================================welcome==============================================" echo "====                                                                                 ======" echo "====           此脚本是用来监控web

Mysql主从状态监控脚本

目标:对Mysql从库进行状态监控,如果从库复制异常就告警 思路: 1.首先查找Mysql从库的4个参数值(show slave status根据这个命令):分别是从库的IO线程.SQL线程.复制延迟时间(这个在以下脚本没用到,可以再写个脚本对其延迟进行告警).错误码 2.函数Mysql_status判断,对IO线程.SQL线程.错误码三者逻辑与判断 3.如果为假则执行函数Mysql_Errno 4.对于mysql错误码为1158 1159 1008 1007 1062 我们可以进行停止slav

mysql状态监控脚本示例(1)

1.获取mysql的性能参量,并且进行判断是否警告 #!/bin/bash #定义变量 v_username='mysql' v_datetime=`date +"%Y-%m-%d %H:%M:%S"` v_hostname=`hostname` v_ip=`/sbin/ifconfig bond2|grep 'inet addr'|awk '{print $2}'|cut -d: -f2` MY_user="root" MY_pwd=*** MY_base=`ps

MySQL主从同步状态监控脚本及邮件通知

网络版本 #!/bin/bash mysql_cmd="mysql -u root -pxxxxxxxxx" errorno=(1158 1159 1008 1007 1062) while true do array=($($mysql_cmd -e "show slave status\G"|egrep '_Running|Behind_Master|Last_SQL_Errno'|awk '{ print $NF }')) if [ "${array

mysql主从状态监控脚本报警脚本

#!/bin/bash MYSQLPORT=`netstat -antlp |grep "LISTEN" ` |grep "3306" |awk -F[:""]+  '{print $4}' MYSQLIP = `ifconfig eth0` |grep "inet addr" |awk -F[:""]+ '{print $4}' STATUS = $(/usr/local/mysql/bin/mysql

linux下使用smtp+shell脚本实现服务器存活状态监控

简单邮件传输协议 (Simple Mail Transfer Protocol, SMTP) 是在Internet传输email的事实标准, SMTP是一个相对简单的基于文本的协议.在其之上指定了一条消息的一个或多个接收者,然后消息文本会 被传输.SMTP使用TCP端口25. 一.配置环境 [[email protected] ~]# cat /etc/redhat-release CentOS Linux release 7.5.1804 (Core) #查看系统环境 [[email prot

编写监控脚本,监控集群内所有服务存活状态,内存、磁盘剩余率检测,异常则发送报警邮件

发送邮件Python程序 #!/usr/bin/python # -*- coding: UTF-8 -*- import sys import smtplib import email.mime.multipart import email.mime.text server = 'smtp.163.com' port = '25' def sendmail(server,port,user,pwd,msg): smtp = smtplib.SMTP() smtp.connect(server,

Nagios中官方iptables监控脚本调整

在Nagios的官方网站上有提供一个用于监控iptables的状态的脚本,但是官方提供的脚本直接是不能使用的需要修改才能使用,在这里就大致所以下,因为Nagios的中命令机制是使用Nagios用户运行的,所以在官网上提供的脚本没有做出调整前是无法正常使用的,官网提供的iptables监控脚本很简单,是使用iptables的指令统计出INPUT上实时的条数的有多少,如果条数-1小于0就告警.但是在普通用户是无法正常使用iptables的命令,如果没有做出调整在Nagios中会出现NRPE:Unab

MongoDB 状态监控、备份复制及自动分片

如果MongoDB仅仅是一个文档型的数据库,那就没有什么亮点了,然而MongoDB最大优点在于读扩展,热备份,故障恢复以及自动分片(写扩展).这节系列结束篇就把这些功能介绍一下. 备份复制实现了数据库备份的同时,实现了读写分离,又实现了读操作的负载均衡,即一台主写服务器,多台从属备份和读服务器,并且支持备份和读的集群扩展.其中Replica Sets方式又支持故障切换,当主服务器down掉后会投票选出一台从服务器接替为主服务器实现写操作.而自动分片功能会将原先的集合(表),自动分片到其它服务器上