Azure Otomasyonu tanılama günlüklerini Azure İzleyici'ye iletme
Azure Otomasyonu Log Analytics çalışma alanınıza runbook iş durumu ve iş akışları gönderebilir. Bu işlem çalışma alanı bağlamayı içermez ve tamamen bağımsızdır ve basit araştırmalar yapmanıza olanak tanır. İş günlükleri ve iş akışları Azure portalında veya tek tek işler için PowerShell ile görünür. Otomasyon hesabınızın Azure İzleyici günlükleriyle şunları yapabilirsiniz:
- Otomasyon işlerinizin durumu hakkında içgörüler edinin.
- Runbook iş durumunuz temelinde bir e-posta veya uyarı tetikleyin (örneğin, başarısız veya askıya alındı).
- İş akışlarınızda gelişmiş sorgular yazın.
- Farklı Otomasyon hesaplarındaki işleri bağıntılandırın.
- Azure panosu aracılığıyla runbook sonuçlarınızı, runbook iş durumunuzu ve diğer ilgili ana göstergeleri veya ölçümleri görselleştirmek için özelleştirilmiş görünümleri ve arama sorgularını kullanın.
- Otomasyon hesapları, runbook'lar ve diğer varlık oluşturma, değiştirme ve silme işlemleriyle ilgili denetim günlüklerini alın.
Azure İzleyici günlüklerini kullanarak, toplanan verileri hızla almak, birleştirmek ve analiz etmek için sorgularla analiz edilebileceği aynı çalışma alanında farklı kaynaklardan günlükleri birleştirebilirsiniz. Azure portalında Log Analytics'i kullanarak sorgu oluşturup test edebilir ve ardından bu araçları kullanarak verileri doğrudan analiz edebilir veya görselleştirme veya uyarı kurallarıyla kullanmak üzere sorguları kaydedebilirsiniz.
Azure İzleyici, Azure Veri Gezgini tarafından kullanılan kusto sorgu dilinin (KQL) basit günlük sorguları için uygun bir sürümünü kullanır. Ayrıca toplamalar, birleştirmeler ve akıllı analiz gibi gelişmiş işlevleri de içerir. Birden çok ders kullanarak sorgu dilini hızla öğrenebilirsiniz.
tanılama ayarlarını Azure Otomasyonu
Otomasyon tanılama ayarları desteğini kullanarak aşağıdaki platform günlüklerini ve ölçüm verilerini iletebilirsiniz:
Veri türleri | Açıklama |
---|---|
İş Günlükleri | Otomasyon hesabındaki runbook işinin durumu. |
İş Akışları | Otomasyon hesabında tanımlanan runbook'taki iş akışlarının durumu. |
DSCNodeStatus | DSC düğümünün durumu. |
AuditEvent | Verilerle veya Azure Otomasyonu hizmetinin ayarlarıyla müşteri etkileşimlerini kaydeden tüm kaynak günlükleri. |
Ölçümler | Toplam iş sayısı, toplam güncelleştirme, dağıtım makinesi çalıştırmaları, toplam güncelleştirme dağıtım çalıştırmaları. |
Azure portalında tanılama ayarlarını yapılandırma
Tanılama ayarlarını Azure portalında Otomasyon hesabı kaynağının menüsünden yapılandırabilirsiniz.
Otomasyon hesabı menüsünde, İzleme'nin altında Tanılama ayarları'nı seçin.
Tanılama ayarı ekle'ye tıklayın.
Zaten yoksa Tanılama ayarı adına bir ayar adı girin.
Günlüklerin ve ölçümlerin tüm kategorilerini de görüntüleyebilirsiniz.
Yönlendirilecek günlükler ve ölçümler: Günlükler için bir kategori grubu seçin veya belirtilen hedeflere göndermek istediğiniz her veri kategorisi için tek tek onay kutularını seçin. Ölçümleri Azure İzleyici günlüklerinde depolamak istiyorsanız AllMetrics'i seçin.
Hedef ayrıntıları : Her hedef için onay kutusunu seçin. Her kutunun seçimine göre, ek bilgi eklemenize olanak sağlayan seçenekler görüntülenir.
Log Analytics : Abonelik Kimliğini ve çalışma alanı adını girin. Çalışma alanınız yoksa devam etmeden önce bir çalışma alanı oluşturmanız gerekir.
Event Hubs: Aşağıdaki ölçütleri belirtin:
- Abonelik: Olay Hub'ının aboneliğiyle aynı abonelik.
- Olay Hub'ı ad alanı: Henüz bir olay hub'ına sahip değilseniz Olay Hub'ı oluşturun.
- Olay Hub'ı adı (isteğe bağlı): Bir ad belirtmezseniz, her günlük kategorisi için bir olay hub'ı oluşturulur. Birden çok kategori gönderiyorsanız, oluşturulan Event Hubs sayısını sınırlamak için bir ad belirtin. Ayrıntılar için bkz . Azure Event Hubs kotaları ve sınırları .
- Olay Hub'ı ilkesi (isteğe bağlı): İlke, akış mekanizmasının sahip olduğu izinleri tanımlar. Bkz. Event Hubs özelliği.
Depolama: Abonelik, depolama hesabı ve bekletme ilkesini seçin.
İş ortağı tümleştirmesi: Önce aboneliğinize bir iş ortağı tümleştirmesi yüklemeniz gerekir. Yapılandırma seçenekleri iş ortağına göre değişir. Daha fazla bilgi için bkz . Azure İzleyici tümleştirmesi.
Kaydet'e tıklayın.
Birkaç dakika sonra bu kaynak için ayarlar listenizde yeni ayar görünür ve yeni olay verileri oluşturulduktan sonra günlükler belirtilen hedeflere akışla aktarılır. Ortaya çıkan olayla Log Analytics çalışma alanındaki görünümü arasında 15 dakika zaman farkı olabilir.
Günlükleri sorgulama
Oluşturulan günlükleri sorgulamak için:
Otomasyon hesabınızdaki İzleme'nin altında Günlükler'i seçin.
Tüm Sorgular'ın altında Otomasyon İşleri'ne tıklayın.
Yürütmek istediğiniz sorgulardan birini seçin ve Çalıştır'a tıklayın.
Özel sorgu yürütmek için Sorgular penceresini kapatın ve özel sorgunuzu yeni sorgu penceresine yapıştırın ve Çalıştır'a tıklayın.
Sorgunun çıktısı Sonuçlar bölmesinde görüntülenir.
Bu sorgu için bir Azure İzleyici uyarısı yapılandırmak için Yeni uyarı kuralı'na tıklayın.
Azure İzleyici günlük kayıtları
Azure Otomasyonu tanılama, Azure İzleyici günlüklerinde olarak AzureDiagnostics
etiketlenmiş aşağıdaki kayıt türlerini oluşturur. Aşağıdaki bölümlerde yer alan tablolar, Azure Otomasyonu oluşturulan kayıtların ve günlük arama sonuçlarında görünen veri türlerinin örnekleridir.
İş günlükleri
Özellik | Açıklama |
---|---|
TimeGenerated | Runbook işinin yürütüldüğü tarih ve saat. |
RunbookName_s | Runbook'un adı/adları. |
Caller_s | İşlemi başlatan çağıran. Olası değerler, bir e-posta adresi veya zamanlanan işlere yönelik bir sistemdir. |
Tenant_g | Çağıranın kiracısını tanımlayan GUID (genel olarak benzersiz tanımlayıcı). |
JobId_g | Runbook işini tanımlayan GUID. |
ResultType | Runbook işinin durumu. Olası değerler şunlardır: - Yeni -Oluşturulan - Başlatıldı - Durduruldu - Askıya alındı - Başarısız oldu -Tamamlandı |
Kategori | Veri türü sınıflandırması. Otomasyon için değer JobLogs olacaktır. |
OperationName | Azure'da gerçekleştirilen işlemin türü. Otomasyon için değer İş'tir. |
Kaynak | Otomasyon hesabının adı |
SourceSystem | Azure İzleyici günlüklerinin verileri toplamak için kullandığı sistem. Değer her zaman Azure tanılaması için Azure'dır. |
ResultDescription | Runbook işi sonuç durumu. Olası değerler şunlardır: - İş başlatıldı - İş Başarısız Oldu - İş Tamamlandı |
CorrelationId | Runbook işinin bağıntı GUID'i. |
ResourceId | Runbook'un hesap kaynak kimliğini Azure Otomasyonu. |
SubscriptionId | Otomasyon hesabı için Azure aboneliği GUID'i. |
ResourceGroup | Otomasyon hesabının kaynak grubunun adı. |
ResourceProvider | Kaynak sağlayıcısının adı. Değer MICROSOFT'tır. OTOMASYON. |
ResourceType | Kaynak türü. Değer AUTOMATIONACCOUNTS'tır. |
İş akışları
Özellik | Açıklama |
---|---|
TimeGenerated | Runbook işinin yürütülürken tarih ve saat. |
RunbookName_s | Runbook'un adı. |
Caller_s | İşlemi başlatan çağıran. Olası değerler, bir e-posta adresi veya zamanlanan işlere yönelik bir sistemdir. |
StreamType_s | İş akışının türü. Olası değerler şunlardır: - İlerleme durumu - Çıktı - Uyarı - Hata - Hata ayıklama - Ayrıntılı |
Tenant_g | Çağıranın kiracısını tanımlayan GUID. |
JobId_g | Runbook işini tanımlayan GUID. |
ResultType | Runbook işinin durumudur. Olası değerler şunlardır: - Devam Ediyor |
Kategori | Veri türü sınıflandırması. Otomasyon için değer JobStreams olacaktır. |
OperationName | Azure'da gerçekleştirilen işlemin türü. Otomasyon için değer İş'tir. |
Kaynak | Otomasyon hesabının adı. |
SourceSystem | Azure İzleyici günlüklerinin verileri toplamak için kullandığı sistem. Değer her zaman Azure tanılaması için Azure'dır. |
ResultDescription | Runbook'tan çıkış akışını içeren açıklama. |
CorrelationId | Runbook işinin bağıntı GUID'i. |
ResourceId | Runbook'un hesap kaynak kimliğini Azure Otomasyonu. |
SubscriptionId | Otomasyon hesabı için Azure aboneliği GUID'i. |
ResourceGroup | Otomasyon hesabının kaynak grubunun adı. |
ResourceProvider | Kaynak sağlayıcısı. Değer MICROSOFT'tır. OTOMASYON. |
ResourceType | Kaynak türü. Değer AUTOMATIONACCOUNTS'tır. |
Not
Kimlik bilgilerinin İş akışlarına gönderilmediğinden emin olun. Hizmet, tanılama günlüklerinde İş akışlarını görüntülemeden önce kimlik bilgilerini kaldırır.
Denetim olayları
Özellik | Açıklama |
---|---|
TenantID | Çağıranın kiracısını tanımlayan GUID. |
TimeGenerated (UTC) | Runbook işinin yürütülürken tarih ve saat. |
Kategori | AuditEvent |
ResourceGroup | Otomasyon hesabının kaynak grubu adı. |
Abonelik Kimliği | Otomasyon hesabı için Azure aboneliği GUID'i. |
ResourceProvider | MICROSOFT'a gidin. OTOMASYON |
Kaynak | Otomasyon Hesabı adı |
ResourceType | OTOMASYONHESAPLAR |
OperationName | Olası değerler Güncelleştir, Oluştur, Sil'tir. |
ResultType | Runbook işinin durumu. Olası değer: Tamamlandı. |
CorrelationId | Runbook işinin bağıntı GUID'i. |
ResultDescription | Runbook işi sonuç durumu. Olası değerler Güncelleştir, Oluştur, Sil'tir. |
Tenant_g | Çağıranın kiracısını tanımlayan GUID. |
SourceSystem | Azure İzleyici günlüklerinin verileri toplamak için kullandığı sistem. Değer her zaman Azure tanılaması için Azure'dır. |
clientInfo_IpAddress_s | {scrubbed} |
clientInfo_PrincipalName_s | {scrubbed} |
clientInfo_TenantId_g | İstemcinin Kiracı Kimliği. |
clientInfo_Issuer_s | |
clientInfo_ObjectId_g | İstemcinin Nesne Kimliği. |
clientInfo_AppId_g | İstemcinin AppID değeri. |
clientInfo_ClientRequestId_g | İstemcinin RequestID değeri |
targetResources_Resource_s | Hesap, İş, Kimlik Bilgileri, Bağlantılar, Değişkenler, Runbook. |
Tür | AzureDiagnostics |
_ResourceId | Runbook'un hesap kaynak kimliğini Azure Otomasyonu. |
Azure İzleyici günlüklerinde Otomasyon günlüklerini görüntüleme
Otomasyon iş akışlarınızı ve günlüklerinizi Azure İzleyici günlüklerine göndermeye başladığınıza göre şimdi Azure İzleyici günlükleri içinde bu günlüklerle neler yapabileceğinizi görelim.
Günlükleri görmek için aşağıdaki sorguyu çalıştırın: kusto AzureDiagnostics | where ResourceProvider == "MICROSOFT.AUTOMATION"
İş günlükleri ve iş akışları için örnek sorgular
Hatayla tamamlanan tüm işleri bulma
Hatalarla ilgili uyarı verme gibi senaryolara ek olarak, bir runbook işinde sonlandırılmayan bir hata olduğunda da bulabilirsiniz. Böyle durumlarda PowerShell bir hata akışı oluşturur, ancak sonlandırılmayan hatalar işinizin askıya alınmasına veya başarısız olmasına neden olmaz.
- Log Analytics çalışma alanınızda Günlükler'e tıklayın.
- Sorgu alanına şunu yazın:
AzureDiagnostics | where ResourceProvider == "MICROSOFT.AUTOMATION" and Category == "JobStreams" and StreamType_s == "Error" | summarize AggregatedValue = count () by JobId_g.
- Ara'ya tıklayın.
bir işin iş akışlarını görüntüleme
Bir işte hata ayıklarken, iş akışlarını da incelemek isteyebilirsiniz. Aşağıdaki sorgu, GUID 2ebd22ea-e05e-4eb9-9d76-d73cbd4356e0
ile tek bir işin tüm akışlarını gösterir:
AzureDiagnostics
| where ResourceProvider == "MICROSOFT.AUTOMATION" and Category == "JobStreams" and JobId_g == "2ebd22ea-e05e-4eb9-9d76-d73cbd4356e0"
| sort by TimeGenerated asc
| project ResultDescription
Geçmiş iş durumunu görüntüleme
Son olarak, zaman içinde iş geçmişinizi görselleştirmek isteyebilirsiniz. Zaman içinde işlerinizin durumunu aramak için bu sorguyu kullanabilirsiniz.
AzureDiagnostics
| where ResourceProvider == "MICROSOFT.AUTOMATION" and Category == "JobLogs" and ResultType != "started"
| summarize AggregatedValue = count() by ResultType, bin(TimeGenerated, 1h)
Otomasyon işlerinde hataları bildiren günlükleri bulun.
AzureDiagnostics
| where ResourceProvider == "MICROSOFT.AUTOMATION"
| where StreamType_s == "Error"
| project TimeGenerated, Category, JobId_g, OperationName, RunbookName_s, ResultDescription, _ResourceId
Tamamlanan Azure Otomasyonu işleri bulma
AzureDiagnostics
| where ResourceProvider == "MICROSOFT.AUTOMATION" and Category == "JobLogs" and ResultType == "Completed"
| project TimeGenerated, RunbookName_s, ResultType, _ResourceId, JobId_g
Başarısız olan, askıya alınan veya durdurulan Azure Otomasyonu işleri bulma
AzureDiagnostics
| where ResourceProvider == "MICROSOFT.AUTOMATION" and Category == "JobLogs" and (ResultType == "Failed" or ResultType == "Stopped" or ResultType == "Suspended")
| project TimeGenerated, RunbookName_s, ResultType, _ResourceId, JobId_g
Hatalarla başarıyla tamamlanan tüm runbook'ları ve işleri listeleme
AzureDiagnostics
| where ResourceProvider == "MICROSOFT.AUTOMATION" and Category == "JobStreams" and StreamType_s == "Error"
| project TimeGenerated, RunbookName_s, StreamType_s, _ResourceId, ResultDescription, JobId_g
Runbook işi başarısız olduğunda veya askıya alındığında e-posta gönderme
Aşağıdaki adımlarda, runbook işinde bir sorun oluştuğunda bildirim almak için Azure İzleyici'de e-posta uyarılarının nasıl ayarlanacağı açıklanmaktadır.
Uyarı kuralı oluşturmak için, günlükleri sorgulama bölümünde açıklandığı gibi uyarıyı çağırması gereken runbook iş kayıtları için bir günlük araması oluşturun. Uyarı kuralını yapılandırmak için +Yeni uyarı kuralına tıklayın.
Otomasyon hesabınızdaki İzleme'nin altında Günlükler'i seçin.
Sorgu alanına bir arama ölçütü girerek uyarınız için bir günlük arama sorgusu oluşturun.
AzureDiagnostics | where ResourceProvider == "MICROSOFT.AUTOMATION" and Category == "JobLogs" and (ResultType == "Failed" or ResultType == "Suspended")
Aşağıdakini kullanarak runbook adına göre de gruplandırabilirsiniz:
AzureDiagnostics | where ResourceProvider == "MICROSOFT.AUTOMATION" and Category == "JobLogs" and (ResultType == "Failed" or ResultType == "Suspended") | summarize AggregatedValue = count() by RunbookName_s
Uyarı kuralı oluştur ekranını açmak için sayfanın üst kısmındaki +Yeni uyarı kuralı'na tıklayın. Uyarıları yapılandırma seçenekleri hakkında daha fazla bilgi için bkz . Azure'da uyarıları günlüğe kaydetme
Tanılama denetim günlüklerini Azure Otomasyonu
Artık denetim günlüklerini Azure İzleyici çalışma alanına da gönderebilirsiniz. Bu, kuruluşların güvenlik ve uyumluluk için önemli otomasyon hesabı etkinliklerini izlemesine olanak tanır. Azure Tanılama ayarları aracılığıyla etkinleştirildiğinde Otomasyon runbook'ları, işler ve bağlantı, kimlik bilgileri, değişken ve sertifika gibi otomasyon varlıkları için oluşturma, güncelleştirme ve silme işlemleri hakkında telemetri toplayabilirsiniz. Güvenlik izleme gereksinimlerinizin bir parçası olarak denetim günlüğü koşullarına yönelik uyarıları da yapılandırabilirsiniz.
Etkinlik günlükleri ile denetim günlükleri arasındaki fark
Etkinlik günlüğü, Azure'da abonelik düzeyi olaylar hakkında içgörü sağlayan bir platform günlüğüdür. Otomasyon hesabının etkinlik günlüğü, otomasyon kaynağının ne zaman değiştirildiği, oluşturulduğu veya silindiği hakkındaki bilgileri içerir. Ancak, kaynağın adını veya kimliğini yakalamaz.
Otomasyon hesapları için denetim günlükleri, kaynak için gerçekleştirilen işlemin türüyle birlikte otomasyon değişkeni, kimlik bilgileri, bağlantı vb. kaynağın adını ve kimliğini yakalar ve Azure Otomasyonu GDPR uyumluluğuna uygun istemci IP verileri gibi bazı ayrıntıları temizler.
Etkinlik günlüğü, Azure kaynakları için ayrıntılı tanılama ve denetim bilgileri sağlayan bir platform günlüğü olduğundan, etkinlik günlükleri istemci IP'si gibi ayrıntıları gösterir. BUNLAR ARM'de gerçekleşen etkinlikler için otomatik olarak oluşturulur ve etkinlik günlüğü kaynak sağlayıcısına gönderilir. Etkinlik günlükleri Azure izlemesinin bir parçası olduğundan, istemci etkinliğiyle ilgili içgörüler sağlamak için bazı istemci verilerini gösterir.
Denetim günlükleri için örnek sorgular
Otomasyon kaynağı denetim günlüklerini görüntülemek için sorgulama
AzureDiagnostics
| where ResourceProvider == "MICROSOFT.AUTOMATION" and Category == "AuditEvent"
Herhangi bir değişken güncelleştirmesini izlemek, oluşturma veya silme işlemini sorgulama
AzureDiagnostics
| where ResourceProvider == "MICROSOFT.AUTOMATION" and Category == "AuditEvent" and targetResources_Resource_s == "Variable"
Oluşturma, taslak oluşturma veya güncelleştirme gibi herhangi bir runbook işlemini izlemek için sorgulama
AzureDiagnostics
| where ResourceProvider == "MICROSOFT.AUTOMATION" and Category == "AuditEvent" and targetResources_Resource_s contains "Runbook"
Herhangi bir sertifika oluşturma, güncelleştirme veya silme işlemini izlemek için sorgulama
AzureDiagnostics
| where ResourceProvider == "MICROSOFT.AUTOMATION" and Category == "AuditEvent" and targetResources_Resource_s contains "Certificate"
Kimlik bilgileri oluşturma, güncelleştirme veya silmeyi izlemek için sorgulama
AzureDiagnostics
| where ResourceProvider == "MICROSOFT.AUTOMATION" and Category == "AuditEvent" and targetResources_Resource_s contains "Credential"
İş durumu çıkışını JSON nesnesine dönüştüren filtre uygulama
Son zamanlarda, Otomasyon günlük verilerinin Log Analytics hizmetindeki tabloya AzureDiagnostics
nasıl yazıldığına ilişkin davranışı değiştirdik ve JSON özelliklerini artık ayrı alanlara bölmedi. Runbook'unuzu çıkış akışındaki nesneleri JSON biçiminde ayrı sütunlar olarak biçimlendirecek şekilde yapılandırdıysanız, bu özelliklere erişmek için sorgularınızı bu alanı bir JSON nesnesine ayrıştıracak şekilde yeniden yapılandırmanız gerekir. Bu, bilinen bir yolda belirli bir JSON öğesine erişmek için json ayrıştırma kullanılarak gerçekleştirilir.
Örneğin, bir runbook çıktı akışındaki ResultDescription özelliğini birden çok alanla JSON biçiminde biçimlendirmektedir. Durum adlı bir alanda belirtildiği gibi başarısız durumda olan işlerinizin durumunu aramak için bu örnek sorguyu kullanarak ResultDescription'da Başarısız durumuyla arama yapın:
AzureDiagnostics
| where Category == 'JobStreams'
| extend jsonResourceDescription = parse_json(ResultDescription)
| where jsonResourceDescription.Status == 'Failed'
Sonraki adımlar
- Azure İzleyici günlükleriyle arama sorguları oluşturma ve Otomasyon iş günlüklerini gözden geçirme hakkında bilgi edinmek için bkz . Azure İzleyici günlüklerinde günlük aramaları.
- Runbook'lardan çıktı ve hata iletilerinin oluşturulmasını ve alınmasını anlamak için bkz . Runbook çıkışını izleme.
- Runbook yürütme, runbook işlerini izleme ve diğer teknik ayrıntılar hakkında daha fazla bilgi edinmek için bkz. Azure Otomasyonu'de Runbook yürütme.
- Azure İzleyici günlükleri ve veri toplama kaynakları hakkında daha fazla bilgi edinmek için bkz . Azure İzleyici günlüklerinde Azure depolama verilerini toplamaya genel bakış.
- Log Analytics sorunlarını giderme konusunda yardım için bkz . Log Analytics'in artık veri toplamama sorunlarını giderme.