Memantau Azure Service Bus

Bila Anda memiliki aplikasi dan proses bisnis yang penting dan mengandalkan sumber Azure, sebaiknya Anda memantau sumber tersebut untuk mengetahui ketersediaan, performa, dan operasinya. Artikel ini menjelaskan data pemantauan yang dihasilkan oleh Azure Service Bus dan cara menganalisis, serta pemberitahuan tentang data ini dengan Azure Monitor.

Apa itu Azure Monitor?

Azure Files membuat data pemantauan dengan menggunakan Azure Monitor, yang merupakan layanan pemantauan tumpukan penuh di Azure. Azure Monitor menyediakan set fitur lengkap untuk memantau sumber daya Azure. Azure Monitor juga dapat memantau sumber di cloud dan lokal lainnya.

Mulai dengan artikel Memantau sumber daya Azure dengan Azure Monitor, yang menjelaskan konsep berikut:

  • Apa itu Azure Monitor?
  • Biaya terkait dengan pemantauan
  • Memantau data yang dikumpulkan di Azure
  • Mengonfigurasi pengumpulan data
  • Alat standar di Azure untuk menganalisis dan memberi tahu tentang data pemantauan

Bagian berikut dibuat pada artikel ini dengan menjelaskan data tertentu yang dikumpulkan dari Azure Service Bus. Bagian ini juga memberikan contoh untuk mengonfigurasi pengumpulan data serta menganalisis data ini dengan alat Azure.

Tip

Untuk memahami biaya yang terkait dengan Azure Monitor, lihat Biaya dan penggunaan Azure Monitor. Untuk memahami waktu yang dibutuhkan data Anda untuk muncul di Azure Monitor, lihat Waktu penyerapan data log.

Memantau data dari Azure Service Bus

Azure Files mengumpulkan data pemantauan yang sejenis dengan sumber daya Azure lainnya, yang dijelaskan dalam Memantau data dari sumber daya Azure.

Lihat Referensi data pemantauan Azure Service Bus untuk referensi terperinci tentang log dan metrik yang dibuat oleh Azure Service Bus.

Pengumpulan dan perutean

Metrik platform dan log aktivitas dikumpulkan dan disimpan secara otomatis, tetapi dapat dirutekan ke lokasi lain menggunakan pengaturan diagnostik.

Log Sumber Daya tidak dikumpulkan dan disimpan sampai Anda membuat pengaturan diagnostik dan merutekannya ke satu atau beberapa lokasi.

Lihat Membuat pengaturan diagnostik untuk mengumpulkan log platform dan metrik di Azure untuk proses terperinci untuk membuat pengaturan diagnostik menggunakan portal Microsoft Azure, CLI, atau PowerShell. Saat membuat pengaturan diagnostik, Anda menentukan kategori log yang akan dikumpulkan. Kategori untuk Azure Service Bus tertera di referensi data pemantauan Azure Service Bus.

Catatan

Azure Monitor tidak menyertakan dimensi dalam data metrik yang diekspor, yang dikirim ke tujuan seperti Azure Storage, Azure Event Hubs, Log Analytics, dll.

Azure Storage

Informasi pengelogan diagnostik disimpan di kontainer bernama insights-logs-operationlogs dan insights-metrics-pt1m.

URL sampel untuk log operasi: https://<Azure Storage account>.blob.core.windows.net/insights-logs-operationallogs/resourceId=/SUBSCRIPTIONS/<Azure subscription ID>/RESOURCEGROUPS/<Resource group name>/PROVIDERS/MICROSOFT.SERVICEBUS/NAMESPACES/<Namespace name>/y=<YEAR>/m=<MONTH-NUMBER>/d=<DAY-NUMBER>/h=<HOUR>/m=<MINUTE>/PT1H.json. URL untuk log metrik mirip dengan URL tersebut.

Azure Event Hubs

Informasi pengelogan diagnostik disimpan di pusat aktivitas bernama insights-logs-operationlogs dan insights-metrics-pt1m. Anda juga dapat memilih hub kejadian sendiri.

Log Analytics

Informasi pengelogan diagnostik disimpan pada tabel bernama AzureDiagnostics dan AzureMetrics.

Contoh output log operasional (diformat)

{
	"Environment": "PROD",
	"Region": "East US",
	"ScaleUnit": "PROD-BL2-002",
	"ActivityId": "a097a88a-33e5-4c9c-9c64-20f506ec1375",
	"EventName": "Retrieve Namespace",
	"resourceId": "/SUBSCRIPTIONS/<Azure subscription ID>/RESOURCEGROUPS/SPSBUS0213RG/PROVIDERS/MICROSOFT.SERVICEBUS/NAMESPACES/SPSBUS0213NS",
	"SubscriptionId": "<Azure subscription ID>",
	"EventTimeString": "5/18/2021 3:25:55 AM +00:00",
	"EventProperties": "{\"SubscriptionId\":\"<Azure subscription ID>\",\"Namespace\":\"spsbus0213ns\",\"Via\":\"https://spsbus0213ns.servicebus.windows.net/$Resources/topics?api-version=2017-04&$skip=0&$top=100\",\"TrackingId\":\"a097a88a-33e5-4c9c-9c64-20f506ec1375_M8CH3_M8CH3_G8\"}",
	"Status": "Succeeded",
	"Caller": "rpfrontdoor",
	"category": "OperationalLogs"
}

Contoh output log metrik (diformat)

{
	"count": 1,
	"total": 4,
	"minimum": 4,
	"maximum": 4,
	"average": 4,
	"resourceId": "/SUBSCRIPTIONS/<Azure subscription ID>/RESOURCEGROUPS/SPSBUS0213RG/PROVIDERS/MICROSOFT.SERVICEBUS/NAMESPACES/SPSBUS0213NS",
	"time": "2021-05-18T03:27:00.0000000Z",
	"metricName": "IncomingMessages",
	"timeGrain": "PT1M"
}

Penting

Mengaktifkan setelan ini memerlukan layanan Azure tambahan (akun penyimpanan, event hub, atau Analitik Log), yang dapat meningkatkan biaya. Untuk menghitung estimasi biaya, kunjungi kalkulator harga Azure.

Catatan

Saat Anda mengaktifkan metrik dalam setelan diagnostik, informasi dimensi saat ini tidak termasuk sebagai bagian dari informasi yang dikirimkan ke akun penyimpanan, event hub, atau analitik log.

Metrik dan log yang dapat Anda kumpulkan dibahas di bagian berikut.

Menganalisis metrik

Anda dapat menganalisis metrik untuk Azure Service Bus, bersama dengan metrik dari layanan Azure lainnya, dengan memilih Metrik dari bagian Azure Monitor pada halaman beranda untuk namespace Service Bus Anda. Lihat Menganalisis metrik dengan penjelajah metrik Azure Monitor untuk detail tentang menggunakan alat ini. Untuk melihat daftar metrik platform yang dikumpulkan, lihat Memantau metrik referensi data Azure Service Bus.

Metrik Explorer dengan namespace Service Bus dipilih

Sebagai referensi, Anda dapat melihat daftar semua metrik sumber yang didukung di Azure Monitor.

Tip

Data metrik Azure Monitor tersedia selama 90 hari. Namun, saat membuat bagan, hanya 30 hari yang dapat divisualisasikan. Contohnya, jika Anda ingin memvisualisasikan periode 90 hari, Anda harus membaginya ke dalam tiga bagan masing-masing 30 hari dalam periode 90 hari.

Pemfilteran dan pemisahan

Untuk metrik yang mendukung dimensi, Anda dapat menerapkan filter menggunakan nilai dimensi. Contohnya, tambahkan filter dengan EntityName yang diatur ke nama antrean atau topik. Anda juga dapat memisahkan metrik berdasarkan dimensi untuk memvisualisasikan perbandingan perbedaan masing-masing segmen. Untuk informasi lebih lanjut mengenai pemfilteran dan pemisahan, lihat Fitur tingkat lanjut Azure Monitor.

Menganalisis log

Menggunakan Azure Monitor Log Analitics mengharuskan Anda membuat konfigurasi diagnostik dan mengaktifkan Kirimkan informasi ke Log Analytics. Untuk informasi lebih lanjut, lihat bagian Pengumpulan dan perutean. Data di Log Azure Monitor disimpan dalam tabel, dengan setiap tabel memiliki sekumpulan properti uniknya sendiri. Azure Bus Layanan memiliki kemampuan untuk mengirimkan log ke salah satu dari dua tabel tujuan - Tabel khusus Azure Diagnostic atau Resource di Log Analytics. Untuk referensi terperinci mengenai log dan metrik, lihat Referensi data pemantauan Azure Service Bus.

Penting

Saat Anda memilih Log dari menu Azure Service Bus, Analitik Log dibuka dengan cakupan kueri yang diatur ke ruang kerja saat ini. Hal ini berarti kueri log hanya akan menyertakan data dari sumber daya. Jika Anda ingin menjalankan kueri yang mencakup data dari database lain atau data dari layanan Azure lainnya, pilih Log dari menu Azure Monitor. Lihat Cakupan kueri log dan rentang waktu di Azure Monitor Log Analytics untuk rinciannya.

Kueri Kusto tambahan

Berikut adalah contoh kueri yang dapat digunakan untuk membantu Anda memantau sumber daya Azure Service Bus:

  • Dapatkan operasi manajemen dalam 7 hari terakhir.

    AzureDiagnostics
    | where TimeGenerated > ago(7d)
    | where ResourceProvider =="MICROSOFT.SERVICEBUS"
    | where Category == "OperationalLogs"
    | summarize count() by EventName_s, _ResourceId
    
  • Dapatkan log audit runtime yang dihasilkan dalam satu jam terakhir.

    AzureDiagnostics
    | where TimeGenerated > ago(1h)
    | where ResourceProvider =="MICROSOFT.SERVICEBUS"
    | where Category == "RuntimeAuditLogs"    
    
  • Dapatkan percobaan akses ke key vault yang mengakibatkan kesalahan "kunci tidak ditemukan".

    AzureDiagnostics
    | where ResourceProvider == "MICROSOFT.SERVICEBUS" 
    | where Category == "Error" and OperationName == "wrapkey"
    | project Message, _ResourceId
    
  • Dapatkan kesalahan dari 7 hari terakhir

    AzureDiagnostics
    | where TimeGenerated > ago(7d)
    | where ResourceProvider =="MICROSOFT.SERVICEBUS"
    | where Category == "Error" 
    | summarize count() by EventName_s, _ResourceId
    
  • Dapatkan operasi yang dilakukan dengan brankas kunci untuk menonaktifkan atau memulihkan kunci.

    AzureDiagnostics
    | where ResourceProvider == "MICROSOFT.SERVICEBUS"
    | where (Category == "info" and (OperationName == "disable" or OperationName == "restore"))
    | project Message, _ResourceId
    
  • Dapatkan semua entitas yang telah dihapus otomatis

    AzureDiagnostics
    | where ResourceProvider == "MICROSOFT.SERVICEBUS"
    | where Category == "OperationalLogs"
    | where EventName_s startswith "AutoDelete"
    | summarize count() by EventName_s, _ResourceId