Sunucusuz işlem maliyetini izleme
Bu makalede, sunucusuz işlem kullanımınızın maliyetini izlemek için faturalanabilir kullanım sistemi tablosunun (Genel Önizleme) nasıl kullanılacağı açıklanmaktadır.
Sunucusuz işlem maliyetleriyle ilgili kullanıcı ve iş yükü özniteliklerini içeren faturalanabilir kullanım sistemi tablosunu (system.billing.usage
) sorgulayarak not defterleri ve iş akışları için sunucusuz işlem kullanımını izleyebilirsiniz. Geçerli alanlar şunlardır:
identity_metadata
sütunu, iş yükünü çalıştırmak için kimlik bilgileri kullanılan kullanıcı veya hizmet sorumlusunu gösteren alanı içerirrun_as
.- Sütunda
usage_metadata
iş yükünü açıklayan alanlar vardır:job_run_id
venotebook_id
.
Sunucusuz kullanım kayıtları için dikkat edilmesi gerekenler
Sunucusuz kullanımınızı analiz ederken aşağıdakileri göz önünde bulundurun:
- Belirli bir saatte belirli bir sunucusuz işlem iş yüküyle ilişkili birden çok kayıt görebilirsiniz. Örneğin, her birinin aynı
job_id
vejob_run_id
ancak farklı DBU tüketim değerlerine sahip birden çok kayıt görebilirsiniz. Bu DBU'ların toplamı, belirli bir iş çalıştırması için saatlik DBU tüketimini toplu olarak temsil eder. - Sunucusuz bir SKU kullanılarak DBU tüketimi faturalanmış ancak ,
job_id
,job_run_id
venotebook_id
içinrun_as
null değerleri olan kayıtları da görebilirsiniz. Bunlar, belirli bir iş yüküne doğrudan atılmayan paylaşılan kaynaklarla ilişkili maliyetleri temsil eder. Sunucusuz işlem kullanımınızı artırdıkça ve daha fazla iş yükü ekledikçe, faturanızdaki bu paylaşılan maliyetlerin oranı daha fazla iş yükü arasında paylaşıldıkları için azalır.
Maliyet gözlemlenebilirlik panosu
Sunucusuz maliyetlerinizi izlemeye başlamanıza yardımcı olmak için Github'dan aşağıdaki maliyet gözlemlenebilirlik panosunu indirin. Bkz. Sunucusuz maliyet gözlemlenebilirlik panosu.
JSON dosyasını indirdikten sonra panoyu çalışma alanınıza aktarın. Panoları içeri aktarma yönergeleri için bkz . Pano dosyasını içeri aktarma.
Sunucusuz harcamaları izlemek için uyarıları kullanma
Uyarılar, sunucusuz harcamalarınız hakkında bilgi sahibi olmak için güçlü bir yoldur. Uyarılarla, sorgu sonuçlarınızda belirli koşullar karşılandığında bildirim alabilirsiniz. Uyarı oluşturmayı öğrenmek için bkz . Uyarı oluşturma.
Bütçeleri izlemek için aşağıdaki sorgulara uyarılar ekleyebilirsiniz. Her sorguda değerini seçtiğiniz bütçeyle değiştirin {budget}
.
Son 30 gün içinde herhangi bir çalışma alanı harcaması eşiği aştığında uyarı verme
Bu sorgu bir satır döndürdüğünde tetikleme için bir uyarı ayarlayabilirsiniz. değerini seçtiğiniz bütçeyle değiştirin {budget}
.
SELECT
t1.workspace_id,
SUM(t1.usage_quantity * list_prices.pricing.default) as list_cost
FROM system.billing.usage t1
INNER JOIN system.billing.list_prices on
t1.cloud = list_prices.cloud and
t1.sku_name = list_prices.sku_name and
t1.usage_start_time >= list_prices.price_start_time and
(t1.usage_end_time <= list_prices.price_end_time or list_prices.price_end_time is null)
WHERE
t1.sku_name LIKE '%SERVERLESS%'
AND billing_origin_product IN ("JOBS", "NOTEBOOKS")
AND t1.usage_date >= CURRENT_DATE() - INTERVAL 30 DAYS
GROUP BY
t1.workspace_id
HAVING
list_cost > {budget}
Kullanıcı son 30 gün içinde eşiği aştığında uyarır
Bu sorgu bir satır döndürdüğünde tetikleme için bir uyarı ayarlayabilirsiniz. değerini seçtiğiniz bütçeyle değiştirin {budget}
.
SELECT
t1.identity_metadata.run_as,
SUM(t1.usage_quantity * list_prices.pricing.default) as list_cost
FROM system.billing.usage t1
INNER JOIN system.billing.list_prices on
t1.cloud = list_prices.cloud and
t1.sku_name = list_prices.sku_name and
t1.usage_start_time >= list_prices.price_start_time and
(t1.usage_end_time <= list_prices.price_end_time or list_prices.price_end_time is null)
WHERE
t1.sku_name LIKE '%SERVERLESS%'
AND billing_origin_product IN ("JOBS", "NOTEBOOKS")
AND t1.usage_date >= CURRENT_DATE() - INTERVAL 30 DAYS
GROUP BY
t1.identity_metadata.run_as
HAVING
list_cost > {budget}
Bir iş son 30 gün içinde eşiği aştığında uyarır
Bu sorgu bir satır döndürdüğünde tetikleme için bir uyarı ayarlayabilirsiniz. değerini seçtiğiniz bütçeyle değiştirin {budget}
.
SELECT
t1.workspace_id,
t1.usage_metadata.job_id,
SUM(t1.usage_quantity * list_prices.pricing.default) as list_cost
FROM system.billing.usage t1
INNER JOIN system.billing.list_prices on
t1.cloud = list_prices.cloud and
t1.sku_name = list_prices.sku_name and
t1.usage_start_time >= list_prices.price_start_time and
(t1.usage_end_time <= list_prices.price_end_time or list_prices.price_end_time is null)
WHERE
t1.sku_name LIKE '%SERVERLESS%'
AND billing_origin_product IN ("JOBS")
AND t1.usage_date >= CURRENT_DATE() - INTERVAL 30 DAYS
GROUP BY
t1.workspace_id, t1.usage_metadata.job_id,
HAVING
list_cost > {budget}
Örnek sorgular
Hesabınızda sunucusuz kullanım hakkında içgörüler elde etmek için aşağıdaki sorguları kullanın:
- Pahalı sunucusuz işlem not defterlerini tanımlama
- Pahalı sunucusuz işlem işlerini tanımlama
- Belirli bir kullanıcı tarafından kullanılan DSU'lar hakkında rapor
- Özel etiketi paylaşan iş yükleri tarafından kullanılan sunucusuz işlem DBU'ları hakkında rapor oluşturma
Pahalı sunucusuz işlem not defterlerini tanımlama
Bu sorgu, DBU tüketimine göre azalan sırada not defterlerinin listesini ve her not defterinin tüketilen DBU sayısını döndürür:
SELECT
usage_metadata.notebook_id,
SUM(usage_quantity) as total_dbu
FROM
system.billing.usage
WHERE
usage_metadata.notebook_id is not null
and billing_origin_product = 'INTERACTIVE'
and product_features.is_serverless
and usage_unit = 'DBU'
and usage_date >= DATEADD(day, -30, current_date)
GROUP BY
1
ORDER BY
total_dbu DESC
Pahalı sunucusuz işlem işlerini tanımlama
Bu sorgu, DBU tüketimine göre azalan sırada işlerin ve her işin tüketilen DBU sayısını içeren bir liste döndürür:
SELECT
usage_metadata.job_id,
SUM(usage_quantity) as total_dbu
FROM
system.billing.usage
WHERE
usage_metadata.job_id is not null
and billing_origin_product = 'JOBS'
and product_features.is_serverless
and usage_unit = 'DBU'
and usage_date >= DATEADD(day, -30, current_date)
GROUP BY
1
ORDER BY
total_dbu DESC
Belirli bir kullanıcı tarafından kullanılan DSU'lar hakkında rapor
Bu sorgu, belirli bir kullanıcı veya hizmet sorumlusu tarafından çalıştırılan sunucusuz işlem kullanan not defterlerinin ve işlerin listesini ve her iş yükü tarafından kullanılan DBU sayısını döndürür:
SELECT
usage_metadata.job_id,
usage_metadata.notebook_id,
SUM(usage_quantity) as total_dbu
FROM
system.billing.usage
WHERE
identity_metadata.run_as = '<emailaddress@domain.com>'
and billing_origin_product in ('JOBS','INTERACTIVE')
and product_features.is_serverless
and usage_unit = 'DBU'
and usage_date >= DATEADD(day, -30, current_date)
GROUP BY
1,2
ORDER BY
total_dbu DESC
Özel etiketi paylaşan iş yükleri tarafından kullanılan sunucusuz işlem DBU'ları hakkında rapor oluşturma
Bu sorgu, aynı özel etiketi paylaşan sunucusuz işlem kullanan işlerin listesini ve her iş yükü tarafından kullanılan DBU sayısını döndürür:
SELECT
usage_metadata.job_id,
usage_metadata.notebook_id,
SUM(usage_quantity) as total_dbu
FROM
system.billing.usage
WHERE
custom_tags.<key> = '<value>'
and billing_origin_product in ('JOBS','INTERACTIVE')
and product_features.is_serverless
and usage_unit = 'DBU'
and usage_date >= DATEADD(day, -30, current_date)
GROUP BY
1,2
ORDER BY
total_dbu DESC
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin