Azure Time Series Insights 2. Nesil Sorgu API'leri

Genel Bakış

Sorgu API'leri, her biri olaylar, seriler ve toplamalar için birer API olan üç REST API tarafından oluşturulur.

Sorgu API'leri, isteğe bağlı sayfalandırma ile HTTP GET istekleri aracılığıyla belirtilen zaman aralığında olay şeması ve olay sayıları döndürür. Seri ve toplu seri bilgileri isteğe bağlı sayfalandırma ile GET işlemleriyle de kullanıma sunulur.

API Açıklama
Olay Alma API'si Arama aralığı ve koşuluyla eşleşen ham olayların listesini döndürür.
Seri API'lerini alma Modelde tanımlanan veya satır içinde sağlanan değişkenler aracılığıyla kabloya kaydedilen verileri kullanarak yakalanan olaylardan Time Series Insights verilerinin sorgulanıp alınmasını sağlar.
Toplama Serisi API'si Toplanan veya örnek işlevleri kullanarak kaydedilen verileri toplayarak yakalanan olaylardan Time Series Insights verilerinin sorgulanıp alınmasını sağlar.

API'ler, HTTP isteği JSON gövdesi aracılığıyla belirtilen çeşitli özelleştirilmiş işlemleri de destekler. Sorgu tanımları yaygın işlemler için kullanılabilir.

Önemli

Hata yanıtları

Sorgu yürütme başarısız olursa, JSON yanıt yükü aşağıdaki yapıya uygun bir hata yanıtı içerir:

{
    "error" : {
        "code" : "...",
        "message" : "...",
        "innerError" : {  
            "code" : "...",
            "message" : "...",
        }
    }
}

Burada isteğe innerError bağlıdır. Hatalı biçimlendirilmiş istek gibi temel hatalara ek olarak aşağıdaki hatalar döndürülür:

Http durum kodu Hata kodu Örnek hata iletisi Olası innerError kodları
400 InvalidApiVersion '2016' API sürümü desteklenmiyor. Desteklenen sürümler :'2016-12-12', '2018-11-01-preview'. -
400 InvalidUrl '/a/b' istek URL'si ayrıştırılamadı. -
400 InvalidInput Verilen 'toplama' sorgusu geçerli değil. Desteklenen sorgular :'getEvents','getSeries','aggregateSeries'. InvalidQueryType
400 InvalidInput 'projectedVariables.temperature.value' içindeki '$event.temperature.Double > 0' zaman serisi ifadesi geçerli bir özellik başvuru ifadesi değil. InvalidPropertyReferenceExpression
400 InvalidInput 'projectedVariables.temperature.filter' içindeki '$event.temperature.Double' zaman serisi ifadesi geçersiz. Yalnızca boole döndüren bir koşul ifadesi olabilir. InvalidPredicateExpression
400 InvalidInput 'projectedVariables.temperature.aggregation' içindeki '$event.temperature.Double' zaman serisi ifadesi geçersiz. Toplama ifadesi içermiyor. InvalidAggregateExpression
400 InvalidInput 'projectedVariables.temperature.value' içindeki '$event.temperature.Double > 0' zaman serisi ifadesi, 'sayısal' türünde geçerli bir değer ifadesi değil. InvalidValueExpression
400 InvalidInput 'projectedVariables.temperature.value' içindeki değer zaman serisi ifadesi belirtilmemeli veya 'toplama' türündeki değişken için null olmalıdır. ValueExpressionShouldNotBeSpecified
400 InvalidInput 'projectedVariables.temperature.value' içindeki değer zaman serisi ifadesi, değişken türü 'sayısal' için belirtilmelidir. ValueExpressionShouldBeSpecified
400 InvalidInput 'projectedVariables.temperature.aggregation' içindeki 'min($value)' ifadesi için 'toplama' değişken türü geçersiz. InvalidVariableKind
400 InvalidInput 'Interval' içindeki '00.00:01' zaman aralığı geçerli bir ISO8601 zaman aralığı biçimi değil. InvalidTimeSpanFormat
400 InvalidInput timeSeriesId '["ABC123"]' olan örnek bulunamadı. InstanceNotFound
400 InvalidInput 'timeSeriesName' adlı örnek bulunamadı. InstanceNotFound
400 InvalidInput timeSeriesId '["ABC321"]' olan örnek silinemez. Bu zaman serisi kimliğiyle ilişkilendirilmiş zaten alınmış olaylar var. CannotDeleteInstance
400 InvalidInput Kimliği '5e19f688-83fb-4aee-8321-5c123ed016b7' olan ortam zaman serisi sorgu API'lerini desteklemiyor. TimeSeriesQueryNotSupported
400 InvalidInput Adı 'temperature' olan öngörülen değişken, tür veya satır içi değişken tanımlarında bulunamadı. ProjectedVariableNotFound
400 InvalidInput Kimliği '7e19g688-83fb-4aee-8321-5c123ed016b7' ve adı 'ABC123' olan tür yukarı eklenemiyor. Bu ad zaten '6e19g688-83fb-4aee-8321-5c123ed016b7' kimliğine sahip tür tarafından kullanılıyor. NameAlreadyExists
400 InvalidInput Kimliği '4e19g688-83fb-4aee-8321-7c123ed016b7' ve adı 'XYZ123' olan hiyerarşi yukarı eklenemedi. Bu ad, '8e39g688-83fb-4aee-8321-5c123ed016b7' kimliğine sahip hiyerarşi tarafından zaten kullanılıyor. HierarchyNotDefined
400 InvalidInput Örnek sayısı '1.000.000' sınırını aştı. NumberOfInstancesExceededLimit
400 InvalidInput Tür sayısı '1000' sınırını aştı. NumberOfTypesExceededLimit
400 InvalidInput Hiyerarşi sayısı '32' sınırını aştı. NumberOfHierarchiesExceededLimit
400 InvalidInput Varlık boyutu izin verilen en büyük '16.384' boyutundan fazla. ObjectSizeExceededLimit
400 InvalidInput '6' uzunluğuna sahip 'ABC123' nesne adı izin verilen en fazla '5' karakter sınırını aşıyor. NameExceededLimit
408 RequestTimeout İstek '30' saniye sonra zaman aşımına uğradı. BatchRequestSizeExceededLimit
503 TooManyRequests '95880732-01b9-44ea-8d2d-4d764dfe1904' ortamı için eşzamanlı istek sayısı '30' aşıldı. EnvRequestLimitExceeded

Ayrıca bkz.

  • Uygulama kaydı ve Azure Active Directory programlama modeli hakkında daha fazla bilgi için bkz. Geliştiriciler için Azure Active Directory.

  • İstek ve kimlik doğrulama parametreleri hakkında bilgi edinmek için Kimlik doğrulaması ve yetkilendirme'yi okuyun.

  • HTTP isteklerini ve yanıtlarını test etme konusunda yardımcı olan araçlar şunlardır:

  • Fiddler. Bu ücretsiz web hata ayıklama proxy'si REST isteklerinizi kesebilir, böylece HTTP isteğini ve yanıt iletilerini tanılayabilirsiniz.

  • JWT.io. Bu aracı kullanarak talepleri taşıyıcı belirtecinize hızla atabilir ve ardından içeriklerini doğrulayabilirsiniz.

  • Postacı. Bu, REST API'lerinde hata ayıklamaya yönelik ücretsiz bir HTTP isteği ve yanıt testi aracıdır.

  • 2. Nesil belgelerini gözden geçirerek Azure Time Series Insights 2. Nesil hakkında daha fazla bilgi edinin.