Azure IoT Hub'ı izleme
Bu makalede şunlar açıklanmaktadır:
- Bu hizmet için toplayabileceğiniz izleme verilerinin türleri.
- Bu verileri analiz etmenin yolları.
Not
Bu hizmeti ve/veya Azure İzleyici'yi zaten biliyorsanız ve yalnızca izleme verilerinin nasıl çözümleneceğini öğrenmek istiyorsanız, bu makalenin sonundaki Çözümle bölümüne bakın.
Azure kaynaklarını kullanan kritik uygulamalarınız ve iş süreçleriniz varsa sisteminiz için uyarıları izlemeniz ve almanız gerekir. Azure İzleyici hizmeti, sisteminizin her bileşeninden ölçümleri ve günlükleri toplar ve toplar. Azure İzleyici kullanılabilirlik, performans ve dayanıklılığın bir görünümünü sağlar ve sorunları size bildirir. İzleme verilerini ayarlamak ve görüntülemek için Azure portalı, PowerShell, Azure CLI, REST API veya istemci kitaplıklarını kullanabilirsiniz.
- Azure İzleyici hakkında daha fazla bilgi için bkz. Azure İzleyici'ye genel bakış.
- Azure kaynaklarını genel olarak izleme hakkında daha fazla bilgi için bkz . Azure İzleyici ile Azure kaynaklarını izleme.
Event Grid ile cihaz başına bağlantı kesilmelerini izleme
Azure İzleyici, IoT Hub'ınıza bağlı cihaz sayısını izlemek için kullanabileceğiniz Bağlı cihazlar adlı bir ölçüm sağlar. Bu ölçüm, bağlı cihaz sayısı eşik değerinin altına düştüğünde bir uyarı tetikler. Azure İzleyici ayrıca, cihaz bağlantılarını, bağlantı kesilmelerini ve bağlantı hatalarını izlemek için kullanabileceğiniz bağlantılar kategorisindeki olayları da yayar. Bu olaylar bazı senaryolar için yeterli olsa da Azure Event Grid, kritik cihazlar ve altyapı için cihaz bağlantılarını izlemek için kullanabileceğiniz düşük gecikme süreli, cihaz başına izleme çözümü sağlar.
Event Grid ile uyarıları tetikleyip cihaz bağlantı durumunu izlemek için IoT Hub DeviceConnected ve DeviceDisconnected olaylarına abone olabilirsiniz. Event Grid, Azure İzleyici'den çok daha düşük bir olay gecikme süresi sağlar, böylece tüm bağlı cihazlar yerine cihaz başına izleme yapabilirsiniz. Bu faktörler Event Grid'i kritik cihazlar ve altyapı için bağlantıları izlemek için tercih edilen yöntem haline getirir. Üretim ortamlarındaki cihaz bağlantılarını izlemek için Event Grid kullanmanızı kesinlikle öneririz.
Event Grid ve Azure İzleyici ile cihaz bağlantısını izleme hakkında daha fazla bilgi için bkz . Azure IoT Hub'a cihaz bağlantısını izleme, tanılama ve sorunlarını giderme.
Kaynak türleri
Azure, abonelikteki her şeyi tanımlamak için kaynak türleri ve kimlikler kavramını kullanır. Kaynak türleri, Azure'da çalışan her kaynağın kaynak kimliklerinin de bir parçasıdır. Örneğin, bir sanal makine için kaynak türünden biri olur Microsoft.Compute/virtualMachines
. Hizmetlerin ve ilişkili kaynak türlerinin listesi için bkz . Kaynak sağlayıcıları.
Azure İzleyici, çekirdek izleme verilerini benzer şekilde, ad alanları olarak da adlandırılan kaynak türlerine göre ölçümler ve günlükler halinde düzenler. Farklı kaynak türleri için farklı ölçümler ve günlükler kullanılabilir. Hizmetiniz birden fazla kaynak türüyle ilişkilendirilebilir.
IoT Hub için kaynak türleri hakkında daha fazla bilgi için bkz . Azure IoT Hub izleme verileri başvurusu.
Veri depolama
Azure İzleyici için:
- Ölçüm verileri Azure İzleyici ölçüm veritabanında depolanır.
- Günlük verileri Azure İzleyici günlükleri deposunda depolanır. Log Analytics, Azure portalında bu depoyu sorgulayan bir araçtır.
- Azure etkinlik günlüğü, Azure portalında kendi arabirimine sahip ayrı bir depodur.
İsteğe bağlı olarak ölçüm ve etkinlik günlüğü verilerini Azure İzleyici günlük deposuna yönlendirebilirsiniz. Ardından Log Analytics'i kullanarak verileri sorgulayabilir ve diğer günlük verileriyle ilişkilendirebilirsiniz.
Birçok hizmet, ölçüm ve günlük verilerini Azure İzleyici dışındaki diğer depolama konumlarına göndermek için tanılama ayarlarını kullanabilir. Örnek olarak Event Hubs kullanarak Azure Depolama, barındırılan iş ortağı sistemleri ve Azure dışı iş ortağı sistemleri verilebilir.
Azure İzleyici'nin verileri nasıl depolandığı hakkında ayrıntılı bilgi için bkz . Azure İzleyici veri platformu.
Toplama ve yönlendirme
Platform ölçümleri, Etkinlik günlüğü ve kaynak günlükleri benzersiz koleksiyon, depolama ve yönlendirme belirtimlerine sahiptir.
IoT hub'ınızdaki Azure portalında İzleme'nin altında Tanılama ayarları'nı ve ardından Tanılama ayarı ekle'yi seçerek IoT hub'ınızın yaydığı günlüklere ve platform ölçümlerine göre kapsamlı tanılama ayarları oluşturabilirsiniz.
Aşağıdaki ekran görüntüsünde, Bağlantı İşlemleri kaynak günlüğü türünü ve tüm platform ölçümlerini Log Analytics çalışma alanına yönlendirmeye yönelik bir tanılama ayarı gösterilmektedir.
IoT Hub platform ölçümlerini diğer konumlara yönlendirirken:
Bu platform ölçümleri tanılama ayarları kullanılarak dışarı aktarılamaz: Bağlı cihazlar ve Toplam cihazlar.
Bazı yönlendirme ölçümleri gibi çok boyutlu ölçümler şu anda boyut değerleri arasında toplanan düzleştirilmiş tek boyutlu ölçümler olarak dışarı aktarılıyor. Daha fazla bilgi için bkz . Platform ölçümlerini diğer konumlara aktarma.
Azure İzleyici platform ölçümleri
Azure İzleyici çoğu hizmet için platform ölçümleri sağlar. Bu ölçümler şunlardır:
- Her ad alanı için ayrı ayrı tanımlanır.
- Azure İzleyici zaman serisi ölçüm veritabanında depolanır.
- Hafif ve neredeyse gerçek zamanlı uyarıyı destekleyebilecek.
- Bir kaynağın zaman içindeki performansını izlemek için kullanılır.
Koleksiyon: Azure İzleyici, platform ölçümlerini otomatik olarak toplar. Yapılandırma gerekmez.
Yönlendirme: Ayrıca bazı platform ölçümlerini Azure İzleyici Günlüklerine / Log Analytics'e yönlendirerek bunları diğer günlük verileriyle sorgulayabilirsiniz. Ölçümü Azure İzleyici Günlükleri/Log Analytics'e yönlendirmek için bir tanılama ayarı kullanıp kullanamadığını görmek için her ölçümün DS dışarı aktarma ayarını denetleyin.
- Daha fazla bilgi için Ölçüm tanılama ayarına bakın.
- Bir hizmetin tanılama ayarlarını yapılandırmak için bkz . Azure İzleyici'de tanılama ayarları oluşturma.
Azure İzleyici'deki tüm kaynaklar için toplamanın mümkün olduğu tüm ölçümlerin listesi için bkz . Azure İzleyici'de desteklenen ölçümler.
İzleyiciye genel bakış
Her IoT hub'ının Azure portalındaki Genel Bakış sayfası, kullanılan ileti sayısı ve IoT hub'ına bağlı cihaz sayısı gibi bazı kullanım ölçümleri sağlayan grafikler içerir.
Doğru ileti sayısı değeri 1 dakika gecikebilir. IoT Hub hizmet altyapısı nedeniyle, değer bazen yenilemede daha yüksek ve daha düşük değerler arasında geri dönüş yapabilir. Bu sayaç yalnızca son dakika içinde tahakkuk eden değerler için yanlış olmalıdır.
Genel Bakış bölmesinde sunulan bilgiler yararlıdır, ancak IoT hub'ı için kullanılabilen yalnızca az miktarda izleme verilerini temsil eder. Bazı izleme verileri otomatik olarak toplanır ve IoT hub'ınızı oluşturur oluşturmaz analiz için kullanılabilir. Bazı yapılandırmalarla diğer veri toplama türlerini etkinleştirebilirsiniz.
Önemli
Azure İzleyici kaynak günlükleri kullanılarak IoT Hub hizmeti tarafından yayılan olayların güvenilir veya sıralı olduğu garanti edilmez. Bazı olaylar kaybolabilir veya sıra dışı teslim edilebilir. Kaynak günlüklerinin gerçek zamanlı olması amaçlanmamıştır, bu nedenle olayların seçtiğiniz hedefte günlüğe kaydedilmesi birkaç dakika sürebilir.
Azure İzleyici kaynak günlükleri
Kaynak günlükleri, bir Azure kaynağı tarafından yapılan işlemler hakkında içgörü sağlar. Günlükler otomatik olarak oluşturulur, ancak bunları kaydetmek veya sorgulamak için Azure İzleyici günlüklerine yönlendirmeniz gerekir. Günlükler kategoriler halinde düzenlenir. Belirli bir ad alanının birden çok kaynak günlüğü kategorisi olabilir.
Koleksiyon: Bir tanılama ayarı oluşturup günlükleri bir veya daha fazla konuma yönlendirene kadar kaynak günlükleri toplanmaz ve depolanmaz. Tanılama ayarı oluşturduğunuzda hangi günlük kategorilerinin toplanacağını belirtirsiniz. Azure portalı, program aracılığıyla ve ancak Azure İlkesi dahil olmak üzere tanılama ayarlarını oluşturmanın ve korumanın birden çok yolu vardır.
Yönlendirme: Önerilen varsayılan ayar, kaynak günlüklerini diğer günlük verileriyle sorgulayabileceğiniz Azure İzleyici Günlüklerine yönlendirmektir. Azure Depolama, Azure Event Hubs ve belirli Microsoft izleme iş ortakları gibi diğer konumlar da kullanılabilir. Daha fazla bilgi için bkz . Azure kaynak günlükleri ve Kaynak günlüğü hedefleri.
Kaynak günlüklerini toplama, depolama ve yönlendirme hakkında ayrıntılı bilgi için bkz . Azure İzleyici'de tanılama ayarları.
Azure İzleyici'deki tüm kullanılabilir kaynak günlüğü kategorilerinin listesi için bkz . Azure İzleyici'de desteklenen kaynak günlükleri.
Azure İzleyici'deki tüm kaynak günlükleri aynı üst bilgi alanlarına ve ardından hizmete özgü alanlara sahiptir. Ortak şema, Azure İzleyici kaynak günlüğü şemasında özetlenmiştir.
Bağlantı olaylarını günlüklere yönlendirme
IoT hub'ı çeşitli işlem kategorileri için kaynak günlüklerini sürekli olarak yayar. Ancak bu günlük verilerini toplamak için analiz edilebileceği veya arşivlenebileceği bir hedefe yönlendirmek için bir tanılama ayarı oluşturmanız gerekir. Bu hedeflerden biri, Kusto sorgularını kullanarak verileri çözümleyebileceğiniz log analytics çalışma alanı (fiyatlandırmaya bakın) aracılığıyla Azure İzleyici Günlükleri'dir.
IoT Hub kaynak günlükleri bağlantıları kategorisi , cihaz bağlantılarıyla ilgili işlemleri ve hataları gösterir. Aşağıdaki ekran görüntüsünde, bu günlükleri Log Analytics çalışma alanına yönlendirmeye yönelik bir tanılama ayarı gösterilmektedir:
IoT hub'ınızı oluşturduktan sonra mümkün olduğunca erken bir tanılama ayarı oluşturmanızı öneririz, çünkü IoT Hub kaynak günlüklerini her zaman yaysa da, siz bunları bir hedefe yönlendirene kadar Azure İzleyici bunları toplamaz.
Günlükleri bir hedefe yönlendirme hakkında daha fazla bilgi edinmek için bkz . Toplama ve yönlendirme. Tanılama ayarı oluşturmaya yönelik ayrıntılı yönergeler için Ölçümleri ve günlükleri kullanma öğreticisine bakın.
Azure etkinlik günlüğü
Etkinlik günlüğü, bu kaynağın dışından görüldüğü gibi her Azure kaynağı için işlemleri izleyen abonelik düzeyinde olaylar içerir; örneğin, yeni bir kaynak oluşturma veya sanal makine başlatma.
Koleksiyon: Etkinlik günlüğü olayları otomatik olarak oluşturulur ve Azure portalında görüntülemek üzere ayrı bir depoda toplanır.
Yönlendirme: Etkinlik günlüğü verilerini Azure İzleyici Günlüklerine göndererek diğer günlük verileriyle birlikte analiz edebilirsiniz. Azure Depolama, Azure Event Hubs ve belirli Microsoft izleme iş ortakları gibi diğer konumlar da kullanılabilir. Etkinlik günlüğünü yönlendirme hakkında daha fazla bilgi için bkz . Azure etkinlik günlüğüne genel bakış.
Günlükleri analiz etme
Azure İzleyici Günlüklerindeki veriler, her tablonun kendi benzersiz özellikler kümesine sahip olduğu tablolarda depolanır. Bu tablolardaki veriler bir Log Analytics çalışma alanıyla ilişkilendirilir ve Log Analytics'te sorgulanabilir. Azure İzleyici Günlükleri hakkında daha fazla bilgi edinmek için Azure İzleyici belgelerindeki Azure İzleyici Günlüklerine genel bakış bölümüne bakın.
Verileri Azure İzleyici Günlüklerine yönlendirmek için, kaynak günlüklerini veya platform ölçümlerini Log Analytics çalışma alanına göndermek için bir tanılama ayarı oluşturmanız gerekir. Daha fazla bilgi için bkz . Toplama ve yönlendirme.
Log Analytics gerçekleştirmek için Azure portalına gidin ve IoT hub'ınızı açın, ardından İzleme'nin altında Günlükler'i seçin. Bu Log Analytics sorgularının kapsamı varsayılan olarak IoT hub'ınız için Azure İzleyici Günlükleri'nde toplanan günlüklere ve ölçümlere göre belirlenmiştir.
IoT Hub platform ölçümlerini Azure İzleyici Günlüklerine yönlendirirken:
Aşağıdaki platform ölçümleri tanılama ayarları kullanılarak dışarı aktarılamaz: Bağlı cihazlar ve Toplam cihazlar.
Bazı yönlendirme ölçümleri gibi çok boyutlu ölçümler şu anda boyut değerleri arasında toplanan düzleştirilmiş tek boyutlu ölçümler olarak dışarı aktarılıyor. Daha fazla ayrıntı için bkz . Platform ölçümlerini diğer konumlara aktarma.
IoT Hub ile ilgili yaygın sorgular için bkz . Örnek Kusto sorguları. Log Analytics sorgularını kullanma hakkında daha fazla bilgi için bkz . Azure İzleyici'de günlük sorgularına genel bakış.
IoT Hub günlüklerinde SDK sürümü
Bazı işlemler, IoT Hub kaynak günlükleri için nesnesinde properties
bir sdkVersion
özellik döndürür. Bu işlemler için, bir cihaz veya arka uç uygulaması Azure IoT SDK'larından birini kullandığında, bu özellik kullanılmakta olan SDK, SDK sürümü ve SDK'nın çalıştığı platform hakkındaki bilgileri içerir.
Aşağıdaki örneklerde kullanılarak bir deviceConnect
işlem için yayılan özellik gösterilmektedirsdkVersion
:
- Node.js cihaz SDK'sı:
"azure-iot-device/1.17.1 (node v10.16.0; Windows_NT 10.0.18363; x64)"
- .NET (C#) SDK'sı:
".NET/1.21.2 (.NET Framework 4.8.4200.0; Microsoft Windows 10.0.17763 WindowsProduct:0x00000004; X86)"
.
Aşağıdaki tabloda farklı Azure IoT SDK'ları için kullanılan SDK adı gösterilmektedir:
sdkVersion özelliğindeki SDK adı | Dil |
---|---|
.NET | .NET (C#) |
microsoft.azure.devices | .NET (C#) hizmet SDK'sı |
microsoft.azure.devices.client | .NET (C#) cihaz SDK'sı |
iothubclient | C veya Python v1 (kullanım dışı) cihaz SDK'sı |
iothubserviceclient | C veya Python v1 (kullanım dışı) hizmet SDK'sı |
azure-iot-device-iothub-py | Python cihaz SDK'sı |
azure-iot-device | Node.js cihaz SDK'sı |
azure-iothub | Node.js hizmet SDK'sı |
com.microsoft.azure.iothub-java-client | Java cihaz SDK'sı |
com.microsoft.azure.iothub.service.sdk | Java hizmeti SDK'sı |
com.microsoft.azure.sdk.iot.iot-device-client | Java cihaz SDK'sı |
com.microsoft.azure.sdk.iot.iot-service-client | Java hizmeti SDK'sı |
C | Katıştırılmış C |
C + (OSSimplified = Eclipse ThreadX) | Eclipse ThreadX |
IoT Hub kaynak günlüklerine yönelik sorgular gerçekleştirdiğinizde SDK sürüm özelliğini ayıklayabilirsiniz. Örneğin, aşağıdaki sorgu, Bağlantı işlemleri tarafından döndürülen özelliklerden SDK sürüm özelliğini (ve cihaz kimliğini) ayıklar. Bu iki özellik, işlemin zamanı ve cihazın bağlandığını IoT hub'ının kaynak kimliğiyle birlikte sonuçlara yazılır.
// SDK version of devices
// List of devices and their SDK versions that connect to IoT Hub
AzureDiagnostics
| where ResourceProvider == "MICROSOFT.DEVICES" and ResourceType == "IOTHUBS"
| where Category == "Connections"
| extend parsed_json = parse_json(properties_s)
| extend SDKVersion = tostring(parsed_json.sdkVersion) , DeviceId = tostring(parsed_json.deviceId)
| distinct DeviceId, SDKVersion, TimeGenerated, _ResourceId
Azure Event Hubs'dan günlükleri okuma
Tanılama ayarları aracılığıyla olay günlüğünü ayarladıktan sonra, günlükleri okuyan uygulamalar oluşturabilir ve böylece içindeki bilgilere göre işlem yapabilirsiniz. Aşağıdaki örnek kod bir olay hub'ından günlükleri alır.
class Program
{
static string connectionString = "{your AMS eventhub endpoint connection string}";
static string monitoringEndpointName = "{your AMS event hub endpoint name}";
static EventHubClient eventHubClient;
//This is the Diagnostic Settings schema
class AzureMonitorDiagnosticLog
{
string time { get; set; }
string resourceId { get; set; }
string operationName { get; set; }
string category { get; set; }
string level { get; set; }
string resultType { get; set; }
string resultDescription { get; set; }
string durationMs { get; set; }
string callerIpAddress { get; set; }
string correlationId { get; set; }
string identity { get; set; }
string location { get; set; }
Dictionary<string, string> properties { get; set; }
};
static void Main(string[] args)
{
Console.WriteLine("Monitoring. Press Enter key to exit.\n");
eventHubClient = EventHubClient.CreateFromConnectionString(connectionString, monitoringEndpointName);
var d2cPartitions = eventHubClient.GetRuntimeInformationAsync().PartitionIds;
CancellationTokenSource cts = new CancellationTokenSource();
var tasks = new List<Task>();
foreach (string partition in d2cPartitions)
{
tasks.Add(ReceiveMessagesFromDeviceAsync(partition, cts.Token));
}
Console.ReadLine();
Console.WriteLine("Exiting...");
cts.Cancel();
Task.WaitAll(tasks.ToArray());
}
private static async Task ReceiveMessagesFromDeviceAsync(string partition, CancellationToken ct)
{
var eventHubReceiver = eventHubClient.GetDefaultConsumerGroup().CreateReceiver(partition, DateTime.UtcNow);
while (true)
{
if (ct.IsCancellationRequested)
{
await eventHubReceiver.CloseAsync();
break;
}
EventData eventData = await eventHubReceiver.ReceiveAsync(new TimeSpan(0,0,10));
if (eventData != null)
{
string data = Encoding.UTF8.GetString(eventData.GetBytes());
Console.WriteLine("Message received. Partition: {0} Data: '{1}'", partition, data);
var deserializer = new JavaScriptSerializer();
//deserialize json data to azure monitor object
AzureMonitorDiagnosticLog message = new JavaScriptSerializer().Deserialize<AzureMonitorDiagnosticLog>(result);
}
}
}
}
Kullanılabilir kaynak günlüğü kategorileri, ilişkili Log Analytics tabloları ve IoT Hub için günlük şemaları için bkz . Azure IoT Hub izleme verileri başvurusu.
İzleme verilerini analiz etme
İzleme verilerini analiz etmek için birçok araç vardır.
Azure İzleyici araçları
Azure İzleyici aşağıdaki temel araçları destekler:
Azure portalında Azure kaynaklarına yönelik ölçümleri görüntülemenize ve analiz etmenizi sağlayan bir araç olan Ölçüm gezgini. Daha fazla bilgi için bkz . Azure İzleyici ölçüm gezginiyle ölçümleri analiz etme.
Azure portalında Kusto sorgu dilini (KQL) kullanarak günlük verilerini sorgulamanıza ve analiz etmenizi sağlayan bir araç olan Log Analytics. Daha fazla bilgi için bkz . Azure İzleyici'de günlük sorgularını kullanmaya başlama.
Azure portalında görüntülemeye ve temel aramalara yönelik bir kullanıcı arabirimine sahip olan etkinlik günlüğü. Daha ayrıntılı analiz yapmak için verileri Azure İzleyici günlüklerine yönlendirmeniz ve Log Analytics'te daha karmaşık sorgular çalıştırmanız gerekir.
Daha karmaşık görselleştirmelere olanak sağlayan araçlar şunlardır:
- Farklı veri türlerini Azure portalında tek bir bölmede birleştirmenize olanak sağlayan panolar .
- Çalışma kitapları, Azure portalında oluşturabileceğiniz özelleştirilebilir raporlar. Çalışma kitapları metin, ölçüm ve günlük sorguları içerebilir.
- Grafana, işletimsel panolarda üstünlük sağlayan açık bir platform aracıdır. Azure İzleyici dışındaki birden çok kaynaktan veri içeren panolar oluşturmak için Grafana'yı kullanabilirsiniz.
- Çeşitli veri kaynakları genelinde etkileşimli görselleştirmeler sağlayan bir iş analizi hizmeti olan Power BI. Bu görselleştirmelerden yararlanmak için Power BI'ı günlük verilerini Azure İzleyici'den otomatik olarak içeri aktaracak şekilde yapılandırabilirsiniz.
Azure İzleyici dışarı aktarma araçları
Aşağıdaki yöntemleri kullanarak Azure İzleyici'nin verilerini diğer araçlara alabilirsiniz:
Ölçümler: Azure İzleyici ölçüm veritabanından ölçüm verilerini ayıklamak için ölçümler için REST API'sini kullanın. API, alınan verileri iyileştirmek için filtre ifadelerini destekler. Daha fazla bilgi için bkz . Azure İzleyici REST API başvurusu.
Günlükler: REST API'sini veya ilişkili istemci kitaplıklarını kullanın.
Bir diğer seçenek de çalışma alanı verilerini dışarı aktarmadır.
Azure İzleyici için REST API'yi kullanmaya başlamak için bkz . Azure izleme REST API'sini izleme kılavuzu.
Kusto sorguları
Kusto sorgu dilini (KQL) kullanarak Azure İzleyici Günlükleri/Log Analytics deposundaki izleme verilerini analiz edebilirsiniz.
Önemli
Portaldaki hizmetin menüsünden Günlükler'i seçtiğinizde Log Analytics açılır ve sorgu kapsamı geçerli hizmete ayarlanır. Bu kapsam, günlük sorgularının yalnızca bu kaynak türündeki verileri içereceği anlamına gelir. Diğer Azure hizmetlerinden veri içeren bir sorgu çalıştırmak istiyorsanız Azure İzleyici menüsünden Günlükler'i seçin. Ayrıntılar için bkz . Azure İzleyici Log Analytics'te günlük sorgusu kapsamı ve zaman aralığı.
Herhangi bir hizmet için yaygın sorguların listesi için bkz . Log Analytics sorguları arabirimi.
IoT hub'ınızı izlemenize yardımcı olması için aşağıdaki Kusto sorgularını kullanın.
Bağlantı Hataları: Cihaz bağlantı hatalarını belirleyin.
AzureDiagnostics | where ResourceProvider == "MICROSOFT.DEVICES" and ResourceType == "IOTHUBS" | where Category == "Connections" and Level == "Error"
Azaltma Hataları: Azaltma hatalarına neden olan en çok istekte bulunan cihazları belirleyin.
AzureDiagnostics | where ResourceProvider == "MICROSOFT.DEVICES" and ResourceType == "IOTHUBS" | where ResultType == "429001" | extend DeviceId = tostring(parse_json(properties_s).deviceId) | summarize count() by DeviceId, Category, _ResourceId | order by count_ desc
Ölü Uç Noktalar: Sorunun bildirildiği sayıya göre ölü veya iyi durumda olmayan uç noktaları belirleyin ve nedenini bilin.
AzureDiagnostics | where ResourceProvider == "MICROSOFT.DEVICES" and ResourceType == "IOTHUBS" | where Category == "Routes" and OperationName in ("endpointDead", "endpointUnhealthy") | extend parsed_json = parse_json(properties_s) | extend Endpoint = tostring(parsed_json.endpointName), Reason = tostring(parsed_json.details) | summarize count() by Endpoint, OperationName, Reason, _ResourceId | order by count_ desc
Hata özeti: Türe göre tüm işlemler arasındaki hataların sayısı.
AzureDiagnostics | where ResourceProvider == "MICROSOFT.DEVICES" and ResourceType == "IOTHUBS" | where Level == "Error" | summarize count() by ResultType, ResultDescription, Category, _ResourceId
Yakın zamanda bağlanan cihazlar: IoT Hub'ın belirtilen süre içinde bağlandığını gördüğü cihazların listesi.
AzureDiagnostics | where ResourceProvider == "MICROSOFT.DEVICES" and ResourceType == "IOTHUBS" | where Category == "Connections" and OperationName == "deviceConnect" | extend DeviceId = tostring(parse_json(properties_s).deviceId) | summarize max(TimeGenerated) by DeviceId, _ResourceId
Belirli bir cihaz için bağlantı olayları: Belirli bir cihaz için günlüğe kaydedilen tüm bağlantı olayları (test cihazı).
AzureDiagnostics | where ResourceProvider == "MICROSOFT.DEVICES" and ResourceType == "IOTHUBS" | where Category == "Connections" | extend DeviceId = tostring(parse_json(properties_s).deviceId) | where DeviceId == "test-device"
Cihazların SDK sürümü: Cihaz bağlantıları veya cihazdan buluta ikiz işlemleri için cihazların ve bunların SDK sürümlerinin listesi.
AzureDiagnostics | where ResourceProvider == "MICROSOFT.DEVICES" and ResourceType == "IOTHUBS" | where Category == "Connections" or Category == "D2CTwinOperations" | extend parsed_json = parse_json(properties_s) | extend SDKVersion = tostring(parsed_json.sdkVersion) , DeviceId = tostring(parsed_json.deviceId) | distinct DeviceId, SDKVersion, TimeGenerated, _ResourceId
Uyarılar
Azure İzleyici uyarıları, izleme verilerinizde belirli koşullar bulunduğunda sizi proaktif olarak bilgilendirir. Uyarılar, müşterileriniz fark etmeden önce sisteminizdeki sorunları tanımlamanıza ve çözmenize olanak sağlar. Daha fazla bilgi için bkz . Azure İzleyici uyarıları.
Azure kaynakları için birçok yaygın uyarı kaynağı vardır. Azure kaynaklarına yönelik yaygın uyarı örnekleri için bkz . Örnek günlük uyarısı sorguları. Azure İzleyici Temel Uyarıları (AMBA) sitesi, önemli platform ölçüm uyarılarını, panolarını ve yönergelerini uygulamak için yarı otomatik bir yöntem sağlar. Site, Azure Giriş Bölgesi'nin (ALZ) parçası olan tüm hizmetler de dahil olmak üzere Azure hizmetlerinin sürekli olarak genişleyen bir alt kümesi için geçerlidir.
Ortak uyarı şeması, Azure İzleyici uyarı bildirimlerinin kullanımını standartlaştırır. Daha fazla bilgi için bkz . Ortak uyarı şeması.
Uyarı türleri
Azure İzleyici veri platformundaki herhangi bir ölçüm veya günlük veri kaynağı hakkında uyarı alabilirsiniz. İzlediğiniz hizmetlere ve topladığınız izleme verilerine bağlı olarak birçok farklı uyarı türü vardır. Farklı uyarı türlerinin çeşitli avantajları ve dezavantajları vardır. Daha fazla bilgi için bkz . Doğru izleme uyarı türünü seçme.
Aşağıdaki listede oluşturabileceğiniz Azure İzleyici uyarılarının türleri açıklanmaktadır:
- Ölçüm uyarıları , kaynak ölçümlerini düzenli aralıklarla değerlendirir. Ölçümler platform ölçümleri, özel ölçümler, Azure İzleyici'den ölçümlere dönüştürülen günlükler veya Application Insights ölçümleri olabilir. Ölçüm uyarıları birden çok koşul ve dinamik eşik de uygulayabilir.
- Günlük uyarıları , kullanıcıların önceden tanımlanmış bir sıklıkta kaynak günlüklerini değerlendirmek için Log Analytics sorgusu kullanmasına olanak sağlar.
- Etkinlik günlüğü uyarıları , tanımlı koşullarla eşleşen yeni bir etkinlik günlüğü olayı oluştuğunda tetikler. Kaynak Durumu uyarıları ve Hizmet Durumu uyarıları, hizmetiniz ve kaynak durumunuz hakkında rapor veren etkinlik günlüğü uyarılarıdır.
Bazı Azure hizmetleri akıllı algılama uyarılarını, Prometheus uyarılarını veya önerilen uyarı kurallarını da destekler.
Bazı hizmetler için, aynı Azure bölgesinde bulunan aynı türdeki birden çok kaynağa aynı ölçüm uyarı kuralını uygulayarak büyük ölçekte izleyebilirsiniz. İzlenen her kaynak için tek tek bildirimler gönderilir. Desteklenen Azure hizmetleri ve bulutları için bkz . Tek bir uyarı kuralıyla birden çok kaynağı izleme.
IoT Hub uyarı kuralları
IoT Hub izleme veri başvurusunda listelenen herhangi bir ölçüm, günlük girişi veya etkinlik günlüğü girişi için uyarılar ayarlayabilirsiniz.
Cihaz bağlantısı kesilmeleri için ölçüm uyarıları ayarlama
IoT Hub tarafından yayılan platform ölçümlerine göre uyarılar ayarlayabilirsiniz. Ölçüm uyarılarıyla, kişilere bir ilgi koşulu oluştuğu konusunda bildirimde bulunabilir ve ayrıca bu koşula otomatik olarak yanıt verebilen eylemleri tetikleyebilirsiniz.
Bağlı cihazlar (önizleme) ölçümü, IoT Hub'ınıza kaç cihazın bağlı olduğunu bildirir. Bu ölçüm eşik değerinin altına düşerse uyarı tetiklenebilir:
Ölçüm uyarı kurallarını kullanarak cihaz bağlantısı anomalilerini büyük ölçekte izleyebilirsiniz. Diğer bir ifadeyle, önemli sayıda cihazın beklenmedik şekilde bağlantısının ne zaman kesildiğini belirlemek için uyarıları kullanın. Bu durum algılandığında, sorunu gidermeye yardımcı olmak için günlüklere bakabilirsiniz. Ancak kritik cihazlar için cihaz başına bağlantı kesilmelerini ve bağlantılarını neredeyse gerçek zamanlı olarak izlemek için Event Grid'i kullanmanız gerekir.
IoT Hub ile ilgili uyarılar hakkında daha fazla bilgi edinmek için bkz . IoT Hub'ı İzleme'deki Uyarılar. IoT Hub'da uyarı oluşturma adımları için Ölçümleri ve günlükleri kullanma öğreticisine bakın. Uyarılara daha ayrıntılı bir genel bakış için Azure İzleyici belgelerindeki Microsoft Azure'da uyarılara genel bakış bölümüne bakın.
Danışman önerileri
Bazı hizmetler için, kaynak işlemleri sırasında kritik koşullar veya yakın değişiklikler gerçekleşirse portaldaki hizmete Genel Bakış sayfasında bir uyarı görüntülenir. Uyarı için daha fazla bilgi ve önerilen düzeltmeleri soldaki menüde İzleme altında Danışman önerileri bölümünde bulabilirsiniz. Normal işlemler sırasında hiçbir danışman önerisi görüntülenmez.
Azure Danışmanı hakkında daha fazla bilgi için bkz . Azure Danışmanına genel bakış.
İlgili içerik
- IoT Hub için oluşturulan ölçümlerin, günlüklerin ve diğer önemli değerlerin başvurusu için bkz . Azure IoT Hub izleme verileri başvurusu .
- Azure kaynaklarını izleme hakkında genel ayrıntılar için bkz . Azure İzleyici ile Azure kaynaklarını izleme.
- Cihaz bağlantısını izlemek için bkz . Azure IoT Hub'a cihaz bağlantısını izleme, tanılama ve sorunlarını giderme.