Bagikan melalui


Kolom standar pada Azure Monitor Logs

Data di Azure Monitor Logs disimpan sebagai sekumpulan rekaman di ruang kerja Log Analytics atau aplikasi Application Insights, masing-masing dengan jenis data tertentu yang memiliki sekumpulan kolom unik. Banyak jenis data memiliki kolom standar yang umum di beberapa jenis. Artikel ini menjelaskan kolom ini dan menyediakan contoh bagaimana Anda dapat menggunakannya dalam kueri.

Aplikasi berbasis ruang kerja di Application Insights menyimpan data mereka di ruang kerja Analitik Log dan menggunakan kolom standar yang sama dengan tabel lain di ruang kerja. Aplikasi klasik menyimpan data mereka secara terpisah dan memiliki kolom standar yang berbeda seperti yang ditentukan dalam artikel ini.

Catatan

Beberapa kolom standar tidak akan ditampilkan dalam tampilan skema atau intellisense di Analitik Log, dan kolom tersebut tidak akan ditampilkan dalam hasil kueri kecuali Anda secara eksplisit menentukan kolom dalam output.

Id Penghuni

Kolom TenantId memiliki ID ruang kerja untuk ruang kerja Log Analytics.

TimeGenerated

Kolom TimeGenerated berisi tanggal dan waktu yang catatannya dibuat oleh sumber data. Lihat Mencatat waktu pencernaan data di Azure Monitor untuk detail selengkapnya.

TimeGenerated menyediakan kolom umum yang digunakan untuk memfilter atau merangkum berdasarkan waktu. Saat Anda memilih rentang waktu untuk tampilan atau dasbor di portal Microsoft Azure, rentang waktu akan menggunakan TimeGenerated untuk memfilter hasilnya.

Catatan

Tabel yang mendukung sumber daya Application Insights klasik menggunakan kolom Timestamp daripada kolom TimeGenerated.

Catatan

Nilai TimeGenerated tidak boleh lebih lama dari 2 hari sebelum menerima waktu atau lebih dari satu hari di masa mendatang. Jika dalam beberapa situasi, nilainya lebih lama dari 2 hari atau lebih dari satu hari di masa mendatang, nilai tersebut akan diganti dengan waktu yang diterima aktual.

Contoh

Kueri berikut mengembalikan jumlah peristiwa kesalahan yang dibuat untuk setiap hari dalam minggu sebelumnya.

Event
| where EventLevelName == "Error" 
| where TimeGenerated between(startofweek(ago(7days))..endofweek(ago(7days))) 
| summarize count() by bin(TimeGenerated, 1day) 
| sort by TimeGenerated asc 

_WaktuDiterima

Kolom _TimeReceived memuat tanggal dan waktu rekaman diterima oleh titik penyerapan Azure Monitor di cloud Azure. Ini dapat berguna untuk mengidentifikasi masalah latensi antara sumber data dan cloud. Contohnya adalah masalah jaringan yang menyebabkan keterlambatan atas data yang dikirim dari agen. Lihat Mencatat waktu pencernaan data di Azure Monitor untuk detail selengkapnya.

Catatan

Kolom _TimeReceived dihitung setiap kali digunakan. Proses ini intensif sumber daya. Menahan diri dari menggunakannya untuk memfilter sejumlah besar rekaman. Penggunaan fungsi ini secara berulang dapat menyebabkan peningkatan durasi eksekusi kueri.

Kueri berikut ini memberikan latensi rata-rata per jam untuk catatan kejadian dari agen. Ini termasuk waktu yang dibutuhkan agen untuk mencapai cloud dan total waktu hingga catatan tersedia untuk kueri log.

Event
| where TimeGenerated > ago(1d) 
| project TimeGenerated, TimeReceived = _TimeReceived, IngestionTime = ingestion_time() 
| extend AgentLatency = toreal(datetime_diff('Millisecond',TimeReceived,TimeGenerated)) / 1000
| extend TotalLatency = toreal(datetime_diff('Millisecond',IngestionTime,TimeGenerated)) / 1000
| summarize avg(AgentLatency), avg(TotalLatency) by bin(TimeGenerated,1hr)

Jenis

Kolom Type menyimpan nama tabel tempat catatan diambil, yang juga dapat dianggap sebagai jenis catatan. Kolom ini berguna dalam kueri yang menggabungkan rekaman dari beberapa tabel, seperti yang menggunakan search operator, untuk membedakan antara rekaman dari berbagai jenis. $table dapat digunakan sebagai pengganti Type di beberapa kueri.

Catatan

Tabel yang mendukung sumber daya Application Insights klasik menggunakan kolom itemType daripada kolom Type.

Contoh

Kueri berikut mengembalikan hitungan rekaman menurut jenis yang dikumpulkan selama satu jam terakhir.

search * 
| where TimeGenerated > ago(1h)
| summarize count() by Type

_ItemId

Kolom _ItemId memiliki pengidentifikasi unik untuk rekaman.

_ResourceId

Kolom _ResourceId memiliki pengidentifikasi unik untuk sumber daya yang terkait dengan rekaman. Ini memberi Anda kolom standar yang digunakan untuk mencakup kueri Anda hanya untuk merekam dari sumber daya tertentu, atau untuk menggabungkan data terkait di beberapa tabel.

Untuk sumber daya Azure, nilai _ResourceIdadalah URL ID sumber daya Azure. Kolom ini terbatas pada sumber daya Azure, termasuk sumber daya Azure Arc, atau log kustom yang menunjukkan ID Sumber Daya selama pencernaan.

Catatan

Beberapa jenis data sudah memiliki bidang yang berisi ID sumber daya Azure atau setidaknya bagian darinya seperti ID langganan. Meskipun bidang ini disimpan untuk kompatibilitas mundur, disarankan untuk menggunakan _ResourceId untuk melakukan korelasi silang karena lebih konsisten.

Contoh

Kueri berikut ini menggabungkan data performa dan peristiwa untuk setiap komputer. Ini menunjukkan semua peristiwa dengan ID 101 dan pemanfaatan prosesor lebih dari 50%.

Perf 
| where CounterName == "% User Time" and CounterValue  > 50 and _ResourceId != "" 
| join kind=inner (     
    Event 
    | where EventID == 101 
) on _ResourceId

Kueri berikut ini menggabungkan rekaman AzureActivity dengan rekaman SecurityEvent. Ini menunjukkan semua aktivitas operasional dengan pengguna yang masuk ke dalam mesin-mesin ini.

AzureActivity 
| where  
    OperationName in ("Restart Virtual Machine", "Create or Update Virtual Machine", "Delete Virtual Machine")  
    and ActivityStatus == "Succeeded"  
| join kind= leftouter (    
   SecurityEvent 
   | where EventID == 4624  
   | summarize LoggedOnAccounts = makeset(Account) by _ResourceId 
) on _ResourceId  

Kueri berikut ini menguraikan _ResourceId dan mengagregasi volume data yang ditagih per Azure Resource Group.

union withsource = tt * 
| where _IsBillable == true 
| parse tolower(_ResourceId) with "/subscriptions/" subscriptionId "/resourcegroups/" 
    resourceGroup "/providers/" provider "/" resourceType "/" resourceName   
| summarize Bytes=sum(_BilledSize) by resourceGroup | sort by Bytes nulls last 

Gunakan kueri union withsource = tt * ini secukupnya karena pemindaian di seluruh jenis data memerlukan banyak sumber daya untuk dieksekusi.

Lebih efisien jika Anda menggunakan kolom _SubscriptionId daripada mengekstraknya dengan mengurai kolom _ResourceId.

_LanggananID

Kolom _SubscriptionId menyimpan ID langganan sumber daya yang terkait dengan rekaman. Ini memberi Anda kolom standar yang dapat digunakan untuk membatasi kueri Anda hanya pada catatan dari langganan tertentu, atau untuk membandingkan berbagai langganan.

Untuk sumber daya Azure, nilai __SubscriptionId adalah bagian langganan dari URL ID sumber daya Azure. Kolom terbatas pada sumber daya Azure, termasuk sumber daya Azure Arc , atau untuk log kustom yang menunjukkan ID Langganan selama penyerapan.

Catatan

Beberapa jenis data telah memiliki bidang yang berisi ID langganan Azure. Meskipun bidang ini disimpan untuk kompatibilitas mundur, disarankan untuk menggunakan kolom _SubscriptionId untuk melakukan korelasi silang karena lebih konsisten.

Contoh

Kueri berikut ini memeriksa data performa untuk komputer langganan tertentu.

Perf 
| where TimeGenerated > ago(24h) and CounterName == "memoryAllocatableBytes"
| where _SubscriptionId == "ebb79bc0-aa86-44a7-8111-cabbe0c43993"
| summarize avgMemoryAllocatableBytes = avg(CounterValue) by Computer

Kueri berikut ini menguraikan_ResourceId dan mengagregasi volume data yang ditagih per langganan Azure.

union withsource = tt * 
| where _IsBillable == true 
| summarize Bytes=sum(_BilledSize) by _SubscriptionId | sort by Bytes nulls last 

Gunakan kueri union withsource = tt * ini secukupnya karena pemindaian di seluruh jenis data memerlukan banyak sumber daya untuk dieksekusi.

_IsDitagih

Kolom _IsBillable menentukan apakah data yang diserap dianggap dapat ditagih. Data dengan _IsBillable sama dengan false tidak dikenakan biaya untuk pengambilan data, penyimpanan, replikasi ruang kerja, atau pengarsipan.

Contoh

Untuk mendapatkan daftar komputer yang mengirim jenis data yang ditagih, gunakan kueri berikut ini:

Catatan

Gunakan kueri dengan union withsource = tt * secukupnya karena pemindaian di seluruh jenis data memerlukan banyak sumber daya untuk dieksekusi.

union withsource = tt * 
| where _IsBillable == true 
| extend computerName = tolower(tostring(split(Computer, '.')[0]))
| where computerName != ""
| summarize TotalVolumeBytes=sum(_BilledSize) by computerName

Ini dapat diperpanjang untuk mengembalikan hitungan komputer per jam yang mengirim jenis data yang ditagih:

union withsource = tt * 
| where _IsBillable == true 
| extend computerName = tolower(tostring(split(Computer, '.')[0]))
| where computerName != ""
| summarize dcount(computerName) by bin(TimeGenerated, 1h) | sort by TimeGenerated asc

UkuranTagihan

Kolom _BilledSize menentukan ukuran dalam byte data yang ditagihkan ke akun Azure Anda jika _IsBillable benar. Lihat Perhitungan ukuran data untuk mempelajari selengkapnya tentang detail cara ukuran yang ditagih dihitung.

Contoh

Untuk melihat ukuran peristiwa yang dikenakan biaya yang dimasukkan per komputer, gunakan kolom _BilledSize, yang menyediakan ukuran dalam byte.

union withsource = tt * 
| where _IsBillable == true 
| summarize Bytes=sum(_BilledSize) by  Computer | sort by Bytes nulls last 

Untuk melihat ukuran transaksi yang dapat ditagih yang diproses per langganan, gunakan kueri berikut ini:

union withsource=table * 
| where _IsBillable == true 
| summarize Bytes=sum(_BilledSize) by  _SubscriptionId | sort by Bytes nulls last 

Untuk melihat ukuran peristiwa yang dapat ditagih yang terserap per grup sumber daya, gunakan kueri berikut ini:

union withsource=table * 
| where _IsBillable == true 
| parse _ResourceId with "/subscriptions/" SubscriptionId "/resourcegroups/" ResourceGroupName "/" *
| summarize Bytes=sum(_BilledSize) by  _SubscriptionId, ResourceGroupName | sort by Bytes nulls last 

Untuk melihat hitungan peristiwa yang dicerna per komputer, gunakan kueri berikut ini:

union withsource = tt *
| summarize count() by Computer | sort by count_ nulls last

Untuk melihat jumlah peristiwa yang dapat ditagih dilacak per komputer, gunakan kueri berikut ini:

union withsource = tt * 
| where _IsBillable == true 
| summarize count() by Computer  | sort by count_ nulls last

Untuk melihat hitungan jenis data yang dapat ditagih dari komputer tertentu, gunakan kueri berikut ini:

union withsource = tt *
| where Computer == "computer name"
| where _IsBillable == true 
| summarize count() by tt | sort by count_ nulls last 

Langkah berikutnya