Servis Tanımlarında MON Yardımı

Bu MON yapılandırması için ikinci ve son aşamadır.

Zorunlu hizmetler için varsayılan değerler gösterilir . Hizmet Tanımları hakkında daha fazla yardım için aşağıdaki ilgili yardım konusuna bakın.

"Mail.alert" için , sendmail'in yapılandırıldığından ve host makinesinde "sendmail" deamonunun başlatıldığından emin olun.

Hizmet Tanımları

servis servis adı
Hizmet tanımı, anahtar kelime hizmeti ve ardından bu hizmetin etiketi olan bir sözcükle başlar.

Bir servisin bileşenleri, aşağıda tanımlandığı gibi bir aralık, monitör ve bir veya daha fazla zaman periyodu tanımlamasıdır.

"Dafault" adlı bir izleme grubunda "varsayılan" hizmet adı tanımlanmışsa (yukarıya bakın), bilinmeyen mon tuzaklarını işlemek için varsayılan / varsayılan tanım kullanılır.

aralıklı zamanlama
Anahtar kelime aralığı ve ardından bir zaman değeri, bir monitör komut dosyasının tetiklenme sıklığını belirtir. Zaman değerleri "30s", "5m", "1h" veya "1d" olarak tanımlanır, yani 30 saniye, 5 dakika, 1 saat veya 1 gün. Sayısal kısım, "1.5 saat" veya bir buçuk saat gibi bir fraksiyon olabilir. Bir zaman belirtiminin bu formatı zaman çizelgesi olarak anılacaktır .

traptimeout timeval
Bu anahtar kelime aralığı ile aynı zaman şartname argüman alır ve genellikle başka bir başarısızlık tescil edilecek en az bir harici kaynaktan bir tuzak beklediğinin hizmeti yapar. Bu, kalp atışı tarzı bir servis için kullanılır.

tuzaklanma zamanlaması
Bir tuzak alınırsa, tuzağın teslim edildiği hizmetin durumu normal olarak sabit kalır. Trapduration belirtilirse, hizmetin durumu zaman çizelgesi tarafından belirtilen süre boyunca bir hata durumunda kalır ve sonra "başarılı" olarak sıfırlanır.

Randskew zaman çizelgesi
Monitör komut dosyasını her aralığın başında çalışacak şekilde zamanlamak yerine, aralık parametresi tarafından belirtilen aralığı artı veya eksi randskew ile rastgele ayarlayın . Eğriltme değeri aralık parametresi olarak belirtilir: "30s", "5m", vb ... Örneğin aralık 1m ve randskew "5s" ise, mon monitör komut dosyasını her 55 saniyede bir zamanlayacak ve 65 saniye. Amaç, aynı aralıklarla çok sayıda hizmet zamanlandığında yükün sunucuya dağıtılmasına yardımcı olmaktır.

monitör monitör adı [arg ...]
Anahtar kelime izleyicinin ardından bir komut dosyası adı ve bağımsız değişkenler, zamanlayıcının süresi dolduğunda çalıştırılacak monitörü belirtir. Monitör komut dosyasına gönderilecek bağımsız değişkenler belirlenirken Kabuk benzeri alıntılama kuralları izlenir. Komut dosyası -s argümanı ile verilen dizinden çağrılır ve aşağıdaki tüm kelimeler monitör programına bağımsız değişkenler olarak verilir, ardından gruptaki geçerli izleme grubu tarafından belirtilen ana bilgisayarların listesi gelir. Monitör çizgisi ";;" ayrı bir kelime olarak, program çağrıldığında ana bilgisayar grupları bağımsız değişken listesine eklenmez.

allow_empty_group
Allow_empty_group seçeneği, devre dışı bırakılan ana makineler nedeniyle o saatin ana makine grubu boş olsa bile bir monitörün çağrılmasına izin verir. Varsayılan davranış, bir ana bilgisayar grubundaki tüm ana bilgisayarlar devre dışı bırakıldığında monitörü çağırmak değildir.

açıklama açıklama metni
Aşağıdaki açıklama , istemci programları tarafından sorgulanır, ortam değişkeni aracılığıyla uyarılara ve monitörlere aktarılır. Bir e-postaya veya bir web sayfasına dahil edilmeye uygun olan hizmetin kısa bir açıklamasını içermelidir.

exclude_hosts ana bilgisayarı [ana makine ...]
Exclude_hosts öğesinden sonra listelenen tüm ana bilgisayarlar hizmet kontrolünden hariç tutulur.

exclude_period periodpec
Süreler ile belirtilen süre boyunca planlanmış bir monitörü çalıştırmayın.

dependexpression'a bağlı
Depends anahtar sözcüğü, mantıksal olarak false değerinden doğru olarak değerlendirilen bir bağımlılık ifadesi belirtmek için kullanılır. Bağımlılıklar gerçek Perl ifadeleridir ve tüm sözdizimsel kurallara uymalıdır. İfadeler, istenmeyen bazı yan etkilere sahip olmayacak şekilde kendi paket alanlarında değerlendirilir. İfadeyi değerlendirirken bir sözdizimi hatası bulunursa, syslog yoluyla günlüğe kaydedilir.

Değerlendirmeden önce, ifade üzerinde aşağıdaki ikameler gerçekleşir: "grup: hizmet" gibi görünen ifadeler, belirtilen hizmetin geçerli çalışma durumunun değeri ile değiştirilir. Bu opstatus ikameleri özyinelemeli olarak hesaplanır, bu nedenle A hizmeti B hizmetine ve B hizmeti hizmet C'ye bağlıysa, hizmet A hizmet C'ye bağlıdır. Başarılı çalışma durumları ("1" olarak değerlendirilir) "STAT_OK", "STAT_COLDSTART "," STAT_WARMSTART "ve" STAT_UNKNOWN ". "SELF" kelimesi (tüm harflerde) grup için kullanılabilir (örn. "SELF: service") ve geçerli izleme grubunun kısaltmasıdır.

Bu özellik, diğer hizmetlere bağımlı servisler için uyarıları kontrol etmek için kullanılabilir, örneğin ping erişimine sahip makineye bağlı bir SMTP testi.

dep_behavior {a | m}
Bağımlılık grafiklerinin değerlendirilmesi, uyarı veya monitör çağrılarının bastırılmasını kontrol edebilir.

Uyarı bastırma . Bu seçenek "a" olarak ayarlanırsa, bağımlılık ifadesi hizmetin monitöründen çıktıktan sonra veya bir tuzak alındıktan sonra değerlendirilir. Bir uyarı yalnızca değerlendirme başarılı olursa gönderilir; başka bir deyişle, bağımlılık grafiğindeki düğümlerin hiçbiri hata göstermez.

Baskılamayı izleyin . "M" olarak ayarlanmışsa, bağımlılık ifadesi hizmetin izleyicisi çalıştırılmadan önce değerlendirilecektir. Değerlendirme başarılı olursa, monitör çalıştırılır. Aksi takdirde, monitör çalışmaz ve hizmetin durumu aynı kalır.

 

Dönem Tanımları

Dönemler, uyarıların iletilmesine izin vermesi gereken koşulları tanımlamak için kullanılır.

period [etiket:] periodpec
Bir süre, bir hata olduğunda bir uyarının ne sıklıkta gerçekleşeceğini kontrol eden bir veya daha fazla alarm ve değişkeni gruplandırır. Period anahtar kelimesinin iki formu vardır. Birincisi, Patrick Ryan'ın Time :: Period Perl 5 modülünden bir dönem spesifikasyonu olan bir argüman alır. Daha fazla bilgi için bkz. "Perldoc Saati :: Periyot".

İkinci form, yukarıda tanımlandığı gibi bir etiket ve ardından nokta belirtimi gerektirir. Etiket, alfabetik bir karakter veya alt çizgi, ardından sıfır veya daha fazla alfasayısal veya alt çizgi içeren ve iki nokta üst üste işaretiyle biten bir etikettir. Bu form, aynı dönem tanımına sahip birden çok noktaya izin verir. Bir kullanım, belirli bir zaman dilimi için herhangi bir uyarı veya uyarı parametresi olmayan bir süre tanımına sahip olmak, diğeri ise bu parametreleri içeren farklı bir uyarı kümesiyle aynı zaman dilimi için bir süre tanımına sahip olmaktır .

uyanık zaman
Alertevery anahtar sözcüğü ( nokta tanımı içinde), aralık değişkeni ile aynı türde bir bağımsız değişken alır ve hizmet başarısız olmaya devam ettiğinde bir uyarının gönderilme sayısını sınırlar. Örneğin, aralık "1s" ise, yalnızca dönem bölümündeki uyarılar yalnızca saatte bir tetiklenir. Alertevery anahtar sözcüğü bir dönem girişinde atlanırsa, her hata algılandığında bir uyarı gönderilir. Varsayılan olarak, art arda iki hatanın çıkışı değişirse, uyarı aralığı geçersiz kılınır. "Özet" kelimesi son argüman ise, ardışık hataların çıktılarını karşılaştırırken yalnızca özet çıktı satırları dikkate alınacaktır.

uyarıcı num

Alertafter num timeval
Alertafter anahtar sözcüğünün ( nokta bölümü içinde) iki şekli vardır: yalnızca "num" bağımsız değişkeniyle veya "num timeval" bağımsız değişkenleriyle. İlk formda, bir uyarı yalnızca "num" ardışık başarısızlıktan sonra çağrılır.

İkinci formda, argümanlar, yukarıdaki aralık değişkeni tarafından tarif edildiği gibi, bir aralık izleyen pozitif bir tamsayıdır. Bu parametreler belirtilirse, o döneme ait uyarılar yalnızca bu aralıkta çok sayıda hata meydana geldikten sonra çağrılır. Örneğin, uyarıcıya "3 30m" bağımsız değişkenleri verilirse, 30 dakika içinde 3 hata oluşursa uyarı çağrılır.

sayılar num

Bu değişken, sunucuya bir hata sırasında en fazla sayı uyarısı çağırmasını bildirir. Uyarı sayacı, dönem başına tutulur ve her başarıdan sonra sıfırlanır.

comp_alerts

Bu seçenek belirtilirse, upalerts yalnızca karşılık gelen bir "aşağı" uyarısı çağrıldığında çağrılır.

uyarı uyarısı [arg ...]
Bir süre, hizmetin başarısız olması durumunda tetiklenen birden fazla uyarı içerebilir. Bir uyarı, uyarı anahtar sözcüğüyle, ardından isteğe bağlı bir çıkış parametresiyle ve monitör tanımıyla aynı olarak yorumlanan, ancak ";;" istisna. Exit parametresi, exit = x veya exit = xy biçimini alır ve uyarının yalnızca monitör komut dosyasının çıkış durumu çıkış parametresi aralığı içine düştüğünde çağrılmasını sağlar. Örneğin, uyarı satırı uyarı çıkışı = 10-20 mail.alert mis ise, posta uyarısı yalnızca monitör programının çıkış değeri 10 ile 20 arasındaysa argüman olarak yanlış olarak çağrılır. Bu özellik tetiklemenize olanak tanır farklı önem seviyelerinde farklı uyarılar (boş disk alanının% 8'den% 3'e çıkması gibi).

Alarm programlarına otomatik olarak geçecek olan hızölçerlerin bir listesi için yukarıdaki UYARI PROGRAMLARI bölümüne bakın.

upalert uyarısı [arg ...]
Bir upalert , bir uyarının iltifatıdır. Bir hizmetler durumu başarısızlıktan başarıya dönüştürdüğünde bir upalert çağrılır. Upalert betiği, uyarı betiği ile aynı parametreleri sağlayarak çağrılır ve bir uyarı betiğinin bir upalert olarak adlandırıldığını bilmesini sağlamak için kullanılan -u parametresi eklenir. Her dönem tanımı için birden fazla yukarı belirtme belirtilebilir. Varsayılan davranışın, bir geçiş işleminde durum geçişleri tetiklendiğinden, daha önce "aşağı" uyarı gönderilip gönderilmediğine bakılmaksızın bir upalert gönderileceğini lütfen unutmayın. Periyot başına comp_alerts seçeneğini yukarı akışları "aşağı" uyarılarıyla eşleştirmek için ayarlayın.

startupalert uyarısı [arg ...]
Bir startupalert yalnızca mon sunucusu yürütülmeye başladığında çağrılır.

zaman aşımından sonra
Upalertafter parametresi, aralık parametresinin ("30s", "1m" vb.) Sözdizimini izleyen ve bir upalert'in tetiklenmesini kontrol eden bir dize olarak belirtilir . Bir hizmet, bu seçeneğin değerinden daha yüksek veya bu değere eşit bir süre kaldıktan sonra geri gelirse, bir yükseltme çağrılır. "Blipsler" (kısa kesintiler) nedeniyle yukarı yönlü öğelerin çağrılmasını önlemek için bu seçeneği kullanın.