<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
	<id>https://wiki.webko.net.ua/index.php?action=history&amp;feed=atom&amp;title=Monitoring_LA</id>
	<title>Monitoring LA - История изменений</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.webko.net.ua/index.php?action=history&amp;feed=atom&amp;title=Monitoring_LA"/>
	<link rel="alternate" type="text/html" href="https://wiki.webko.net.ua/index.php?title=Monitoring_LA&amp;action=history"/>
	<updated>2026-04-25T23:27:23Z</updated>
	<subtitle>История изменений этой страницы в вики</subtitle>
	<generator>MediaWiki 1.35.1</generator>
	<entry>
		<id>https://wiki.webko.net.ua/index.php?title=Monitoring_LA&amp;diff=51&amp;oldid=prev</id>
		<title>Sol: Новая страница: « vim mon_la.sh  chmod +x mon_la.sh   #!/bin/sh    ## system variables  export PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin  export LC_ALL=C…»</title>
		<link rel="alternate" type="text/html" href="https://wiki.webko.net.ua/index.php?title=Monitoring_LA&amp;diff=51&amp;oldid=prev"/>
		<updated>2015-04-19T17:38:20Z</updated>

		<summary type="html">&lt;p&gt;Новая страница: « vim mon_la.sh  chmod +x mon_la.sh   #!/bin/sh    ## system variables  export PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin  export LC_ALL=C…»&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt; vim mon_la.sh&lt;br /&gt;
 chmod +x mon_la.sh&lt;br /&gt;
&lt;br /&gt;
 #!/bin/sh&lt;br /&gt;
 &lt;br /&gt;
 ## system variables&lt;br /&gt;
 export PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin&lt;br /&gt;
 export LC_ALL=C&lt;br /&gt;
 &lt;br /&gt;
 srv=`uname -n`&lt;br /&gt;
 info_mail='mail@domain.ltd'&lt;br /&gt;
 lock='/usr/local/var/mon_la.*'&lt;br /&gt;
 la_info=10&lt;br /&gt;
 lock_info='/usr/local/var/mon_la.info'&lt;br /&gt;
 la_warning=15&lt;br /&gt;
 lock_warning='/usr/local/var/mon_la.warning'&lt;br /&gt;
 la_critical=20&lt;br /&gt;
 lock_critical='/usr/local/var/mon_la.critical'&lt;br /&gt;
 la_death=80&lt;br /&gt;
 lock_death='/usr/local/var/mon_la.death'&lt;br /&gt;
 death_services='httpd perl'&lt;br /&gt;
 topout='/var/tmp/top.tmp'&lt;br /&gt;
 &lt;br /&gt;
 la=`cat /proc/loadavg | cut -d'.' -f1`&lt;br /&gt;
 #la=12&lt;br /&gt;
 &lt;br /&gt;
 # normal LA level&lt;br /&gt;
 if [ $la -lt $la_info ]&lt;br /&gt;
 then&lt;br /&gt;
 	if [ -e &amp;quot;$lock_info&amp;quot; -o -e &amp;quot;$lock_warning&amp;quot; -o -e &amp;quot;$lock_critical&amp;quot; -o -e &amp;quot;$lock_death&amp;quot; ]&lt;br /&gt;
 	then&lt;br /&gt;
 		rm -rf $lock &amp;gt;/dev/null 2&amp;gt;/dev/null&lt;br /&gt;
 #		mail -s &amp;quot;[monitoring] LA on $srv change to normal value = $la&amp;quot; $info_mail&lt;br /&gt;
 		exit&lt;br /&gt;
 	fi&lt;br /&gt;
 	exit&lt;br /&gt;
 fi&lt;br /&gt;
 &lt;br /&gt;
 # info LA level&lt;br /&gt;
 if [ $la -ge $la_info -a $la -lt $la_warning ]&lt;br /&gt;
 then&lt;br /&gt;
 	if [ -e $lock_info ]&lt;br /&gt;
 	then&lt;br /&gt;
 		n=`cat $lock_info`&lt;br /&gt;
 	fi&lt;br /&gt;
 	case $n in&lt;br /&gt;
 		1) echo 2 &amp;gt; $lock_info;;&lt;br /&gt;
 		2) echo 3 &amp;gt; $lock_info;;&lt;br /&gt;
 		3) echo 4 &amp;gt; $lock_info;;&lt;br /&gt;
 		4) echo 5 &amp;gt; $lock_info;;&lt;br /&gt;
 		5)&lt;br /&gt;
 			mail -s &amp;quot;[monitoring] LA=$la last 5 min. on $srv&amp;quot; $info_mail&lt;br /&gt;
 			echo 1 &amp;gt; $lock_info&lt;br /&gt;
 		;;&lt;br /&gt;
 		*) echo 1 &amp;gt; $lock_info;;&lt;br /&gt;
 	esac&lt;br /&gt;
 	exit&lt;br /&gt;
 fi&lt;br /&gt;
 &lt;br /&gt;
 # warning LA level&lt;br /&gt;
 if [ $la -ge $la_warning -a $la -lt $la_critical -a ! -e &amp;quot;$lock_warning&amp;quot; ]&lt;br /&gt;
 then&lt;br /&gt;
 	touch $lock_warning&lt;br /&gt;
 	mail -s &amp;quot;[monitoring] WARNING LA=$la on $srv&amp;quot; $info_mail&lt;br /&gt;
 	exit&lt;br /&gt;
 fi&lt;br /&gt;
 &lt;br /&gt;
 # critical LA level&lt;br /&gt;
 if [ $la -ge $la_critical -a $la -lt $la_death -a ! -e &amp;quot;$lock_critical&amp;quot; ]&lt;br /&gt;
 then&lt;br /&gt;
 	touch $lock_critical&lt;br /&gt;
 	top -b -n1 &amp;gt; $topout&lt;br /&gt;
 	grep -E &amp;quot;(httpd\s+$|proftpd\s+$|perl\s+$)&amp;quot; $topout | grep -Ev &amp;quot;(\s+root\s+|\s+ftp\s+)&amp;quot; | awk '{print $1}' | while read pid&lt;br /&gt;
 	do&lt;br /&gt;
 		kill -9 $pid&lt;br /&gt;
 	done&lt;br /&gt;
 	echo -e &amp;quot;top output:\n\n`cat $topout`&amp;quot; | mail -s &amp;quot;[monitoring] CRITICAL LA=$la on $srv&amp;quot; $info_mail&lt;br /&gt;
 	rm -rf $topout&lt;br /&gt;
 	exit&lt;br /&gt;
 fi&lt;br /&gt;
 &lt;br /&gt;
 # death LA level&lt;br /&gt;
 if [ $la -ge $la_death ]&lt;br /&gt;
 then&lt;br /&gt;
 	touch $lock_death&lt;br /&gt;
 	top -b -n1 &amp;gt; /var/tmp/top.tmp&lt;br /&gt;
 	grep -E &amp;quot;(httpd\s+$|proftpd\s+$|perl\s+$)&amp;quot; $topout | grep -Ev &amp;quot;(\s+root\s+|\s+ftp\s+)&amp;quot; | awk '{print $1}' | while read pid&lt;br /&gt;
 	do&lt;br /&gt;
 		kill -9 $pid&lt;br /&gt;
 	done&lt;br /&gt;
 	echo -e &amp;quot;top output:\n\n`cat /var/tmp/top.tmp`&amp;quot; | mail -s &amp;quot;[monitoring] DEATH LA=$la on $srv&amp;quot; $info_mail&lt;br /&gt;
 	rm -rf $topout&lt;br /&gt;
 	exit&lt;br /&gt;
 fi&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
[[Категория:Общее *nix]]&lt;/div&gt;</summary>
		<author><name>Sol</name></author>
	</entry>
</feed>