Azure Veri Gezgini ve Azure Kaynak Grafı'daki verileri Log Analytics çalışma alanında bulunan verilerle ilişkilendirme
Azure İzleyici Günlüklerindeki analizinizi geliştirmek için Azure Veri Gezgini ve Azure Kaynak Grafı'daki verileri Log Analytics çalışma alanınızdaki verilerle ve Application Insights kaynaklarıyla ilişkilendirebilirsiniz. Log Analytics çalışma alanlarında da veri depolayan Microsoft Sentinel, Azure Veri Gezgini için hizmetler arası sorguları destekler ancak Azure Kaynak Grafı için desteklemez. Bu makalede, Log Analytics çalışma alanında veri depolayan herhangi bir hizmetten çapraz hizmet sorguları çalıştırma işlemi açıklanmaktadır.
Log Analytics web kullanıcı arabirimi, çalışma kitapları, PowerShell ve REST API dahil olmak üzere Kusto Sorgu Dili (KQL) sorgularını destekleyen tüm istemci araçlarını kullanarak hizmetler arası sorgular çalıştırın.
Gerekli izinler
Azure Veri Gezgini veya Azure Kaynak Grafı'daki verileri Log Analytics çalışma alanında bulunan verilerle ilişkilendiren bir hizmetler arası sorgu çalıştırmak için şunlar gerekir:
Microsoft.OperationalInsights/workspaces/query/*/read
örneğin Log Analytics Okuyucusu yerleşik rolü tarafından sağlandığı gibi sorguladığınız Log Analytics çalışma alanlarına yönelik izinler.- Azure Kaynak Grafı'de sorguladığınız kaynaklara yönelik okuyucu izinleri.
- Azure Veri Gezgini'da sorguladığınız tablolar için görüntüleyici izinleri.
adx() kullanarak Azure Veri Gezgini'de verileri sorgulama
Desen içindeki bir sorguya Azure Veri Gezgini kümesinin tanımlayıcısını adx
ve ardından veritabanı adını ve tablosunu girin.
adx('https://help.kusto.windows.net/Samples').StormEvents
Azure Veri Gezgini küme tablolarını Log Analytics çalışma alanıyla birleştirme
union
Küme tablolarını Log Analytics çalışma alanıyla birleştirmek için komutunu kullanın.
Örneğin:
union customEvents, adx('https://help.kusto.windows.net/Samples').StormEvents
| take 10
let CL1 = adx('https://help.kusto.windows.net/Samples').StormEvents;
union customEvents, CL1 | take 10
İpucu
Kısaltma biçimine izin verilir: ClusterName/InitialCatalog. Örneğin, adx('help/Samples')
öğesine çevrilir adx('help.kusto.windows.net/Samples')
.
birleşim yerine işlecini kullandığınızdajoin
, Azure Veri Gezgini kümesindeki verileri Log Analytics çalışma alanıyla birleştirmek için bir hint
kullanmanız gerekir. Hint.remote={Direction of the Log Analytics Workspace}
adresini kullanın.
Örneğin:
AzureDiagnostics
| join hint.remote=left adx("cluster=ClusterURI").AzureDiagnostics on (ColumnName)
Azure İzleyici kaynağı başka bir kiracıdaki Azure Veri Gezgini kümesinden verileri birleştirme
Hizmetler arasındaki kiracılar arası sorgular desteklenmez. Her iki kaynağa da yayılan sorguyu çalıştırmak için tek bir kiracıda oturum açtınız.
Azure Veri Gezgini kaynağı A Kiracısında ve Log Analytics çalışma alanı B Kiracısındaysa aşağıdaki yöntemlerden birini kullanın:
- Farklı kiracılardaki sorumlulara rol eklemek için Azure Veri Gezgini kullanın. Kullanıcı kimliğinizi Azure Veri Gezgini kümesinde yetkili bir kullanıcı olarak B Kiracısına ekleyin. Azure Veri Gezgini kümesindeki TrustedExternalTenant özelliğinin B Kiracısı içerdiğini doğrulayın. Çapraz sorguyu B Kiracısı'nda tam olarak çalıştırın.
- Azure İzleyici kaynağını A Kiracısına yansıtmak için Lighthouse kullanın.
Farklı kiracılardan Azure Veri Gezgini kümelerine bağlanma
Kusto Gezgini, kullanıcı hesabının ilk olarak ait olduğu kiracıda otomatik olarak oturum açar. Aynı kullanıcı hesabına sahip diğer kiracılardaki kaynaklara erişmek için bağlantı dizesi açıkça belirtmeniz TenantId
gerekir:
Data Source=https://ade.applicationinsights.io/subscriptions/SubscriptionId/resourcegroups/ResourceGroupName;Initial Catalog=NetDefaultDB;AAD Federated Security=True;Authority ID=TenantId
arg() (Önizleme) kullanarak Azure Kaynak Grafı'de verileri sorgulama
Deseni arg("")
ve ardından Azure Kaynak Grafı tablo adını girin.
Örneğin:
arg("").<Azure-Resource-Graph-table-name>
arg()
Log Analytics'teki işleç, birleşik Microsoft Defender platformunda da kullanılabilir. İşleç arg()
yalnızca Microsoft Sentinel verileri üzerinde çalışır (yani Defender XDR tabloları desteklenmez). Bu özellik, gelişmiş tehdit avcılığı arabiriminin içinden ve içgörülerinden yararlanmanıza arg()
olanak sağlayarak Microsoft Sentinel'in operatörü kullanması için el ile yeni bir pencere açmanıza gerek duymanızı sağlar.
İpucu
Operatör arg()
artık gelişmiş avcılıkta önizleme için kullanılabilir. Bu özellik yalnızca Microsoft Sentinel verilerini sorgulamanızı sağlar. Daha fazla bilgi için bkz. Azure Kaynak Grafı sorguları için arg() işlecini kullanma (Önizleme)
Aşağıda, yeni Azure Kaynak Grafı hizmetler arası sorgu özelliklerini kullanan örnek Azure Log Analytics sorguları verilmiştir:
Log Analytics sorgusunu Azure Kaynak Grafı sorgusunun sonuçlarına göre filtreleyin:
arg("").Resources | where type == "microsoft.compute/virtualmachines" and properties.hardwareProfile.vmSize startswith "Standard_D" | join ( Heartbeat | where TimeGenerated > ago(1d) | distinct Computer ) on $left.name == $right.Computer
Yalnızca ARG sorgusundan alınan belirli kaynaklara uygulanan bir uyarı kuralı oluşturun:
Etiketleri temel alan kaynakları dışlayın; örneğin, "Test" etiketine sahip VM'ler için uyarı tetiklememek.
arg("").Resources | where tags.environment=~'Test' | project name
CPU kullanımıyla ilgili performans verilerini alın ve "prod" etiketiyle kaynaklara filtreleyin.
InsightsMetrics | where Name == "UtilizationPercentage" | lookup ( arg("").Resources | where type == 'microsoft.compute/virtualmachines' | project _ResourceId=tolower(id), tags ) on _ResourceId | where tostring(tags.Env) == "Prod"
Diğer kullanım örnekleri:
- VM'lerin 7 gün 24 saat çalışıp çalışmayacağını veya geceleri kapatılması gerektiğini belirlemek için bir etiket kullanın.
- Belirli sayıda çekirdek içeren herhangi bir sunucuda uyarıları gösterin.
Log Analytics çalışma alanınızdan hizmetler arası sorguyu temel alan bir uyarı oluşturma
Log Analytics çalışma alanınızdan hizmetler arası sorguyu temel alan bir uyarı kuralı oluşturmak için Kapsam sekmesinde Log Analytics çalışma alanınızı seçerek Günlük araması uyarı kuralı oluşturma veya düzenleme başlığı altındaki adımları izleyin.
Not
Ayrıca, uyarınızın kapsamı olarak ilgili kaynağı seçerek Azure Veri Gezgini ve Azure Kaynak Grafı'dan Log Analytics çalışma alanına çapraz hizmet sorguları çalıştırabilirsiniz.
Sınırlamalar
Genel hizmetler arası sorgu sınırlamaları
- Hizmetler arası sorgular, tanımı , ,
workspace()
arg()
resource()
, ve gibiadx()
diğer çalışma alanları arası veya hizmetler arası ifadeleri içeren parametreleştirilmiş işlevleri veapp()
işlevleri desteklemez. - Hizmetler arası sorgular yalnızca ".show" işlevlerini destekler.
Bu özellik, kümeler arası sorguların bir Azure İzleyici, Azure Veri Gezgini veya Azure Kaynak Grafı tablo işlevine doğrudan başvurmasını sağlar.
Hizmetler arası sorguda aşağıdaki komutlar desteklenir:
.show functions
.show function {FunctionName}
.show database {DatabaseName} schema as json
- Veritabanı adları büyük/küçük harfe duyarlıdır.
- Kümedeki Zaman Damgası sütununun tanımlanması desteklenmez. Log Analytics Sorgu API'si zaman filtresini geçmeyecek.
- Hizmetler arası sorgular yalnızca veri almayı destekler.
- Özel Bağlantı (özel uç noktalar) ve IP kısıtlamaları, hizmetler arası sorguları desteklemez.
mv-expand
2.000 kayıtla sınırlıdır.- Azure İzleyici Günlükleri, Azure Veri Gezgini dış tabloları sorgulamanıza olanak tanıyan işlevi desteklemez
external_table()
. Dış tabloyu sorgulamak için Azure Veri Gezgini'da parametresiz bir işlev olarak tanımlayınexternal_table(<external-table-name>)
. Ardından ifadesiniadx("").<function-name>
kullanarak işlevini çağırabilirsiniz.
Azure Kaynak Grafı hizmetler arası sorgu sınırlamaları
- Microsoft Sentinel, Azure Kaynak Grafı için hizmetler arası sorguları desteklemez.
- Azure İzleyici'den Azure Kaynak Grafı verilerini sorguladığınızda:
- Sorgu yalnızca ilk 1.000 kaydı döndürür.
- Azure İzleyici, Azure Kaynak Grafı sorgu hatalarını döndürmez.
- Log Analytics sorgu düzenleyicisi geçerli Azure Kaynak Grafı sorgularını söz dizimi hataları olarak işaretler.
- birleştirmeler, İpucu kullanılmıyorken desteklenmez.
- Bu işleçler desteklenmez:
smv-apply()
, , ,arg_max()
,arg_min()
,avg()
, ,avg_if()
, ,countif()
, ,percentilew()
stdev()
sumif()
percentile()
stdevp()
variancep()
percentiles()
percentilesw()
stdevif()
variance()
, .varianceif()
rand()
Azure Kaynak Grafı tablolarını Log Analytics çalışma alanıyla birleştirme
union
Küme tablolarını Log Analytics çalışma alanıyla birleştirmek için komutunu kullanın.
Örneğin:
union AzureActivity, arg("").Resources
| take 10
let CL1 = arg("").Resources ;
union AzureActivity, CL1 | take 10
Birleşim yerine işlecini kullandığınızdajoin
, Azure Kaynak Grafı'daki verileri Log Analytics çalışma alanında bulunan verilerle birleştirmek için bir hint
kullanmanız gerekir. Hint.remote={Direction of the Log Analytics Workspace}
adresini kullanın. Örneğin:
Perf | where ObjectName == "Memory" and (CounterName == "Available MBytes Memory")
| extend _ResourceId = replace_string(replace_string(replace_string(_ResourceId, 'microsoft.compute', 'Microsoft.Compute'), 'virtualmachines','virtualMachines'),"resourcegroups","resourceGroups")
| join hint.remote=left (arg("").Resources | where type =~ 'Microsoft.Compute/virtualMachines' | project _ResourceId=id, tags) on _ResourceId | project-away _ResourceId1 | where tostring(tags.env) == "prod"