Bu konu, SkyWalking'in Application Real-Time Monitoring Service (ARMS) hizmetinin alt hizmeti olan Uyarı Yönetimi ile nasıl entegre edileceğini açıklar.
1. Adım: SkyWalking entegrasyonu oluşturun
ARMS konsolu üzerinde oturum açın. Sol gezinme bölmesinde seçeneğine tıklayın.
Alert Integration sekmesinde SkyWalking öğesine tıklayın.
-
Create SkyWalking Integration sihirbazında entegrasyon için bir ad ve açıklama girin, uyarı olayları için otomatik kurtarma süresini ayarlayın ve ardından Save öğesine tıklayın.
NotZaman aşımı sonrası otomatik kurtarma süresi: Belirtilen süre içinde bir uyarı olayı tekrar tetiklenmezse uyarı olayı otomatik olarak temizlenir.
Alert Integration sekmesinde oluşturduğunuz SkyWalking entegrasyonunu bulun ve webhook URL'sini kopyalayın.
2. Adım: SkyWalking'i yapılandırın
-
SkyWalking'in dağıtıldığı sunucuda oturum açın ve SkyWalking betiklerinin bulunduğu dizine gidin:
cd /opt/sky/apache-skywalking-apm-bin/ -
Dizindeki config klasörünü görüntülemek için aşağıdaki komutu çalıştırın:
ls config/ -
config klasöründeki alarm-settings.yml dosyasını değiştirmek için aşağıdaki komutu çalıştırın:
vim config/alarm-settings.yml -
1. Adım bölümünde elde ettiğiniz URL'yi
webhookalanına ekleyin:webhook - https://alerts.aliyuncs.com/api/v1/skywalking/event/****** Değişiklikleri alarm-settings.yml dosyasına kaydetmek için
:wqkomutunu çalıştırın.
(İsteğe bağlı) 3. Adım: Entegrasyonu değiştirin
ARMS, SkyWalking uyarı kaynakları ve ARMS uyarıları arasında varsayılan alan eşlemeleri sağlar. Edit Integration sayfasında eşlemeleri ekleyebilir veya değiştirebilirsiniz.
Örnek uyarı kaynağı:
{
"startTime":1630408697583,
"scope":"SERVICE_INSTANCE",
"scopeId":2,
"name":"932******@127.0.XX.XX of testApp",
"alarmMessage":"instance_jvm_cpu of 932******@127.0.XX.XX of testApp is more than 80 in 2 minutes of last 3 minutes",
"ruleName":"instance_jvm_cpu_rule",
"id1":"",
"id0":"YnNtLXdlYg==.1_OTMyYjU1NmVmM2Y1NGR====--7p862kYTliODA4MTk0ZTJlODcxMWFAMTAuMS4xMS4xNg=="
}
Alert Integration sekmesinde yönetmek istediğiniz entegrasyonu bulun ve Actions sütunundaki Edit seçeneğine tıklayın.
Event Mapping bölümünde Send Test Data seçeneğine tıklayın.
-
Send Test Data iletişim kutusunda üçüncü taraf bir uyarı kaynağının uyarı içeriğini JSON biçiminde girin ve Send seçeneğine tıklayın.
NotUploaded. No events are generated. Configure mappings based on the original data. iletisi görünürse uyarı kaynağının alanları ARMS uyarı olaylarının alanlarıyla eşlenmemiş demektir. Gönderilen veriler sol taraftaki kutuda görüntülenir. Bu sayede eşlemeleri yapılandırırken kaynak alanlarını seçebilirsiniz.
Uploaded. iletisi görünürse uyarı içeriği Uyarı Olayı Geçmişi sayfasına bildirilir. Daha fazla bilgi için bkz. Uyarı olayı geçmişini görüntüleme.
Send Test Data iletişim kutusunda Disable seçeneğine tıklayın.
Event Mapping bölümünün sol kısmında eşlemeleri yapılandırmak istediğiniz veri kayıtlarına tıklayarak ayrıntıları görüntüleyin.
-
Event Mapping bölümünün sağ tarafında kaynak alanlarını ARMS uyarı alanlarıyla eşleyin.
-
İsteğe bağlı:Select Root Node bölümünde toplu işlemenin etkinleştirilip etkinleştirilmeyeceğini belirtin.
Uyarı verilerinde bir dizi düğümü varsa dizi düğümünü kök düğüm olarak belirtebilirsiniz. Kök düğüme ait veriler toplu olarak işlenir.
Use Batch Processing seçeneğini seçtikten sonra toplu olarak işlenecek dizi düğümünü kök düğüm olarak seçin.
NotUyarı verilerinde birden çok dizi düğümü varsa toplu işlem için yalnızca bu dizi düğümlerinden birini seçebilirsiniz.
-
Map Source Fields to Target Fields bölümünde uyarı kaynağının alanlarını ARMS uyarı alanlarıyla eşleyin.
Alan eşleme yöntemini değiştirmek için eşleme simgesine tıklayın.
Doğrudan: Uyarı kaynağının belirtilen alanı doğrudan ARMS'nin belirtilen uyarı alanıyla eşlenir.
Seri: Uyarı kaynağının birden çok alanını ayırıcılar kullanarak tek bir alanda birleştirebilir ve ardından bu alanı ARMS'nin belirtilen uyarı alanıyla eşleyebilirsiniz. Ayırıcı olarak yalnızca özel karakterler kullanılabilir.
Koşullu: Alan değerleri belirtilen koşulları karşıladığında belirtilen uyarı kaynağı alanları ARMS uyarı alanlarıyla eşlenir.
Eşleme tablosu: Uyarı kaynağı önem derecesi ARMS uyarı önem derecesiyle eşlenir. Eşleme tablosu yalnızca önem derecesi alanını içerir.
Aşağıdaki tabloda ARMS uyarı alanları açıklanmaktadır.
Uyarı alanı
Açıklama
alertname
Özel uyarının adı.
severity
Uyarının önem derecesi. Bu alan için eşlemeleri yapılandırmanız gerekir. Eşleme yöntemi Doğrudan olarak ayarlanmalıdır.
message
Uyarının açıklaması. Açıklama, uyarı mesajının içeriği olarak kullanılır. Açıklama 15.000 karakteri aşamaz.
value
Bir ölçümün örnek değeri.
imageUrl
Grafana ölçümlerini içeren çizgi grafiğinin URL'si. URL, çizgi grafiğini eşlemek için kullanılır.
check
Uyarının kontrol öğesi. Örnekler: CPU, JVM, Application Crash ve Deployment.
source
Uyarının kaynağı.
class
Uyarı olayını tetikleyen nesnenin türü (örneğin, host).
service
Uyarının kaynak hizmeti. Örnek: Login Service.
startat
Olayın başlangıç zamanını temsil eden zaman damgası.
endat
Olayın bitiş zamanını temsil eden zaman damgası.
generatorUrl
Olay ayrıntılarının URL'si.
-
-
Uyarı olayları için alan yinelenmesini yapılandırın.
Yinelenen verileri azaltmak amacıyla sistem ilgili alanları yinelenme temeli olarak kullanır. ARMS Uyarı Yönetimi, Event Mapping bölümünde görüntülenen geçmiş olay verilerinin yinelenme gruplama sonuçlarını önizlemenize olanak tanır. Yinelenmesi gereken alanları değiştirebilirsiniz.
NotYinelenmeyi yalnızca temizlenmemiş olaylar için yapılandırabilirsiniz.
-
Integration Details sayfasındaki Event Deduplication bölümünde yinelenme için kullanılan alanları seçin.
Birden çok olayda belirtilen bir alan için aynı değer varsa olaylar tek bir uyarı bildiriminde birleştirilir.
-
Yinelenme sonrası uyarı grubunu önizlemek için Deduplication Test seçeneğine tıklayın.
NotYinelenme testi, Event Mapping bölümünün sol kısmında yüklenen son 10 veri kaydı üzerinde etkilidir.
-
Ayarları yapılandırdıktan sonra Save seçeneğine tıklayın.
Bir uyarı olayının ayrıntılarını görüntüleyin
ARMS konsolunun sol gezinme bölmesinde seçeneğine tıklayın.
Alert Event History sayfasında olay ayrıntılarını görüntülemek için uyarı olayının adına tıklayın. Daha fazla bilgi için bkz. Uyarı olayı geçmişini görüntüleme.
Entegrasyonu yönetin
Sol gezinme bölmesinde seçeneğine tıklayın. Alert Integration sekmesinde oluşturduğunuz entegrasyonlarda aşağıdaki işlemleri gerçekleştirebilirsiniz:
Bir entegrasyonun ayrıntılarını görüntüleyin: Entegrasyonu bulun ve ardından satıra tıklayın. Integration Details sayfasında entegrasyon ayrıntılarını görüntüleyin.
-
Anahtarı güncelleyin: Değiştirmek istediğiniz entegrasyon için Actions sütununda seçeneğine tıklayın ve ardından görünen iletişim kutusunda Confirm seçeneğine tıklayın.
ÖnemliAnahtarı güncelledikten sonra
alarm-settings.yml
dosyasını
bölümünde açıklandığı gibi değiştirmeniz gerekir.
Bir entegrasyonu değiştirin: Entegrasyonu bulun ve ardından Actions sütunundaki Edit seçeneğine tıklayın. Integration Details sayfasında entegrasyon bilgilerini değiştirin ve ardından Save seçeneğine tıklayın.
Bir entegrasyonu etkinleştirin veya devre dışı bırakın: Entegrasyonu bulun ve ardından Actions sütunundaki Disable veya Enable seçeneğine tıklayın.
Bir entegrasyonu silin: Entegrasyonu bulun ve ardından Actions sütunundaki Delete seçeneğine tıklayın. Görünen mesajda OK seçeneğine tıklayın.
Bir entegrasyona olay işleme akışı ekleyin: Entegrasyonu bulun ve Actions sütunundaki Add Event Processing Flow seçeneğine tıklayın. Daha fazla bilgi için bkz. Olay işleme akışı.
Bildirim ilkesi oluşturun: Bildirim ilkesi oluşturmak istediğiniz entegrasyonu bulun ve Actions sütununda More seçeneğine tıklayın. Görünen listede Create Notification Policy seçeneğine tıklayın. Daha fazla bilgi için bkz. Bildirim ilkeleri.
Sonraki adımlar
Bildirim ilkesi oluşturduktan sonra sistem bildirilen uyarı olayları için uyarılar oluşturur ve oluşturduğunuz bildirim ilkesine göre uyarı bildirimleri gönderir. Daha fazla bilgi için bkz. Bildirim ilkeleri. Alert Sending History sayfasında yapılandırılan bildirim ilkesine göre oluşturulan uyarıları görüntüleyebilirsiniz. Daha fazla bilgi için bkz. Uyarı gönderme geçmişini görüntüleme.