Mengelola biaya dengan automasi
Anda dapat menggunakan otomatisasi Cost Management untuk membuat serangkaian solusi kustom untuk mengambil dan mengelola data biaya. Artikel ini membahas skenario umum untuk otomatisasi Cost Management dan opsi yang tersedia berdasarkan situasi Anda. Jika Anda ingin mengembangkan menggunakan API, contoh permintaan API umum dan diberikan untuk membantu mempercepat proses pengembangan Anda.
Mengotomatiskan pengambilan data biaya untuk analisis offline
Anda mungkin perlu mengunduh data biaya Azure untuk menggabungkannya dengan himpunan data lainnya. Atau, Anda mungkin perlu mengintegrasikan data biaya ke dalam sistem Anda sendiri. Ada berbagai opsi yang tersedia, tergantung pada jumlah data yang terlibat. Anda harus memiliki izin Cost Management pada cakupan yang sesuai untuk menggunakan API dan alat dalam hal apa pun. Untuk mengetahui informasi selengkapnya, lihat Menetapkan akses ke data.
Saran untuk menangani himpunan data besar
Jika organisasi Anda memiliki kehadiran Azure yang besar di banyak sumber daya atau langganan, Anda akan memiliki sejumlah besar hasil data detail penggunaan. Excel sering kali tidak dapat memuat file berukuran besar tersebut. Dalam situasi ini, kami merekomendasikan opsi berikut:
Power BI
Power BI digunakan untuk menyerap dan menangani data dalam jumlah besar. Jika Anda adalah pelanggan Perjanjian Enterprise, Anda dapat menggunakan aplikasi templat Power BI untuk menganalisis biaya untuk akun penagihan Anda. Laporan ini berisi tampilan utama yang digunakan oleh pelanggan. Untuk mengetahui informasi selengkapnya, lihat Menganalisis biaya Azure dengan aplikasi templat Power BI.
Konektor data Power BI
Jika Anda ingin menganalisis data setiap hari, sebaiknya gunakan konektor data Power BI untuk mendapatkan data untuk analisis mendetail. Setiap laporan yang Anda buat selalu diperbarui oleh konektor karena semakin banyak biaya timbul.
Ekspor Cost Management
Anda mungkin tidak perlu menganalisis data setiap hari. Jika demikian, pertimbangkan untuk menggunakan fitur Ekspor Cost Management untuk menjadwalkan ekspor data ke akun Azure Storage. Lalu, Anda dapat memuat data ke Power BI sesuai kebutuhan, atau menganalisisnya di Excel jika file tersebut cukup kecil. Ekspor tersedia di portal Azure atau Anda dapat mengonfigurasi ekspor dengan API Ekspor.
API Detail Penggunaan
Pertimbangkan untuk menggunakan API Detail Penggunaan jika Anda memiliki himpunan data biaya kecil. Berikut adalah praktik terbaik yang direkomendasikan:
- Jika Anda ingin mendapatkan data biaya terbaru, sebaiknya Anda melakukan kueri paling banyak sekali per hari. Laporan diperbarui setiap empat jam. Jika Anda lebih sering menelepon, Anda akan menerima data yang sama.
- Setelah Anda mengunduh data biaya untuk faktur historis, tagihan tidak akan berubah kecuali Anda diberi tahu secara eksplisit. Kami merekomendasikan untuk membuat cache data biaya Anda dalam cache di penyimpanan yang dapat dibuat kuerinya untuk mencegah panggilan berulang untuk data yang sama.
- Bagi panggilan Anda ke dalam rentang tanggal yang kecil untuk mendapatkan file yang lebih mudah dikelola yang dapat Anda unduh. Misalnya, kami merekomendasikan pembagian berdasarkan hari atau minggu jika Anda memiliki file penggunaan Azure yang besar dari bulan ke bulan.
- Jika Anda memiliki cakupan dengan data penggunaan dalam jumlah besar (misalnya Akun Penagihan), pertimbangkan untuk melakukan beberapa panggilan ke cakupan turunan sehingga Anda mendapatkan lebih banyak file yang dapat dikelola yang dapat Anda unduh.
- Jika kumpulan data Anda lebih dari 2 GB dari bulan ke bulan, pertimbangkan untuk menggunakan ekspor sebagai solusi yang lebih skalabel.
Mengotomatiskan pengambilan dengan API Detail Penggunaan
API Detail Penggunaan menyediakan cara mudah untuk mendapatkan data biaya mentah dan tidak agregat yang sesuai dengan tagihan Azure Anda. API berguna saat organisasi Anda memerlukan solusi pengambilan data terprogram. Pertimbangkan untuk menggunakan API jika Anda ingin menganalisis himpunan data biaya yang lebih kecil. Namun, Anda harus menggunakan solusi lain yang diidentifikasi sebelumnya jika Anda memiliki himpunan data yang lebih besar. Data dalam Detail Penggunaan disediakan per meter, per hari. Ini digunakan saat menghitung tagihan bulanan Anda. Versi ketersediaan umum (GA) API adalah 2019-10-01
. Gunakan 2019-04-01-preview
untuk mengakses versi pratinjau untuk reservasi dan pembelian Marketplace Azure dengan API.
Jika Anda ingin mendapatkan data yang diekspor dalam jumlah besar secara teratur, lihat Mengambil himpunan data biaya besar berulang dengan ekspor.
Saran API Detail Penggunaan
Jadwal permintaan
Sebaiknya buat tidak lebih dari satu permintaan ke API Detail Penggunaan per hari. Untuk mengetahui informasi selengkapnya tentang seberapa sering data biaya di-refresh dan seberapa besar pengaturannya, lihat Memahami data manajemen biaya.
Menargetkan cakupan tingkat atas tanpa pemfilteran
Gunakan API untuk mendapatkan semua data yang Anda butuhkan di cakupan tingkat tertinggi yang tersedia. Tunggu hingga semua data yang diperlukan diserap sebelum melakukan pemfilteran, pengelompokan, atau analisis agregat. API dioptimalkan khusus untuk menyediakan sejumlah besar data biaya mentah yang tidak diagregat. Untuk mempelajari lebih lanjut tentang cakupan yang tersedia di Cost Management, lihat Memahami dan bekerja dengan cakupan. Setelah Anda mengunduh data yang diperlukan untuk cakupan, gunakan Excel untuk menganalisis data lebih lanjut dengan filter dan tabel pivot.
Catatan tentang harga
Jika Anda ingin menyesuaikan penggunaan dan biaya dengan lembar harga atau faktur Anda, lihat Perilaku harga dalam detail biaya.
Satu sumber daya mungkin memiliki beberapa data selama satu hari
Penyedia sumber daya Azure mengeluarkan penggunaan dan biaya ke sistem penagihan dan mengisi bidang Additional Info
data penggunaan. Terkadang, penyedia sumber daya mungkin mengeluarkan penggunaan untuk hari tertentu dan memberi stempel data dengan pusat data di bidang Additional Info
data penggunaan. Ini dapat menyebabkan beberapa data untuk meter/sumber daya tersedia dalam file penggunaan Anda selama satu hari. Dalam situasi itu, Anda tidak ditagih berlebihan. Beberapa data menunjukkan biaya penuh meteran untuk sumber daya pada hari itu.
Contoh permintaan API Detail Penggunaan
Contoh permintaan berikut digunakan oleh pelanggan Microsoft untuk mengatasi skenario umum yang mungkin Anda temui.
Mendapatkan Detail Penggunaan untuk cakupan selama rentang tanggal tertentu
Data yang ditampilkan oleh permintaan yang sesuai dengan tanggal saat penggunaan diterima oleh sistem penagihan. Mungkin termasuk biaya dari beberapa faktur. Panggilan untuk penggunaan berbeda-beda berdasarkan jenis langganan Anda.
Untuk pelanggan warisan dengan Perjanjian Enterprise (EA) atau langganan bayar sesuai penggunaan, gunakan panggilan berikut:
GET https://management.azure.com/{scope}/providers/Microsoft.Consumption/usageDetails?$filter=properties%2FusageStart%20ge%20'2020-02-01'%20and%20properties%2FusageEnd%20le%20'2020-02-29'&$top=1000&api-version=2019-10-01
Untuk pelanggan modern dengan Perjanjian Pelanggan Microsoft, gunakan panggilan berikut:
GET https://management.azure.com/{scope}/providers/Microsoft.Consumption/usageDetails?startDate=2020-08-01&endDate=2020-08-05&$top=1000&api-version=2019-10-01
Catatan
Parameter $filter
tidak didukung oleh Perjanjian Pelanggan Microsoft.
Mendapatkan detail biaya yang diamortisasi
Jika Anda memerlukan biaya aktual untuk menampilkan pembelian saat terakumulasi, ubah metrik ke ActualCost
di permintaan berikut. Untuk menggunakan biaya diamortisasi dan aktual, Anda harus menggunakan versi 2019-04-01-preview
tersebut. Versi API saat ini berfungsi sama dengan versi 2019-10-01
, kecuali untuk atribut jenis/metrik baru dan nama properti yang diubah. Jika Anda memiliki Perjanjian Pelanggan Microsoft, filter Anda adalah startDate
dan endDate
di contoh berikut.
GET https://management.azure.com/{scope}/providers/Microsoft.Consumption/usageDetails?metric=AmortizedCost&$filter=properties/usageStart+ge+'2019-04-01'+AND+properties/usageEnd+le+'2019-04-30'&api-version=2019-04-01-preview
Mengotomatiskan pemberitahuan dan tindakan dengan anggaran
Ada dua komponen penting untuk memaksimalkan nilai investasi di cloud. Salah satunya adalah pembuatan anggaran otomatis. Yang lain adalah mengonfigurasi orkestrasi berbasis biaya sebagai respons terhadap pemberitahuan anggaran. Ada berbagai cara untuk mengotomatiskan pembuatan anggaran. Berbagai respons pemberitahuan terjadi saat ambang pemberitahuan yang dikonfigurasi terlampaui.
Bagian berikut mencakup opsi yang tersedia dan menyediakan sampel permintaan API untuk memulai otomatisasi anggaran.
Cara biaya dievaluasi terhadap ambang anggaran Anda
Biaya Anda dievaluasi terhadap ambang anggaran Anda sekali per hari. Saat Anda membuat anggaran baru atau pada hari reset anggaran Anda, biaya yang dibandingkan dengan ambang akan menjadi nol/null karena evaluasi mungkin tidak terjadi.
Saat Azure mendeteksi bahwa biaya Anda telah melewati ambang, pemberitahuan dipicu dalam satu jam dari periode deteksi.
Menampilkan biaya Anda saat ini
Untuk melihat biaya saat ini, Anda perlu melakukan panggilan GET menggunakan API Kueri.
Panggilan GET ke API Anggaran tidak akan menampilkan biaya saat ini yang ditunjukkan dalam Analisis Biaya. Sebaliknya, panggilan menampilkan biaya evaluasi terakhir Anda.
Mengotomatiskan pembuatan anggaran
Anda dapat mengotomatiskan pembuatan anggaran menggunakan API Anggaran. Anda juga dapat membuat anggaran dengan templat anggaran. Templat adalah cara mudah bagi Anda untuk menstandarkan penyebaran Azure sekaligus memastikan kontrol biaya dikonfigurasi dan diberlakukan dengan benar.
Lokal yang didukung untuk email pemberitahuan anggaran
Dengan anggaran, Anda akan diberi tahu saat biaya melewati ambang yang ditetapkan. Anda dapat menyiapkan hingga lima penerima email per anggaran. Penerima menerima pemberitahuan email dalam waktu 24 jam setelah melewati ambang anggaran. Namun, penerima mungkin perlu menerima email dalam bahasa yang berbeda. Anda dapat menggunakan kode budaya bahasa berikut dengan API Anggaran. Atur kode budaya dengan parameter locale
yang mirip dengan contoh berikut.
{
"eTag": "\"1d681a8fc67f77a\"",
"properties": {
"timePeriod": {
"startDate": "2020-07-24T00:00:00Z",
"endDate": "2022-07-23T00:00:00Z"
},
"timeGrain": "BillingMonth",
"amount": 1,
"currentSpend": {
"amount": 0,
"unit": "USD"
},
"category": "Cost",
"notifications": {
"actual_GreaterThan_10_Percent": {
"enabled": true,
"operator": "GreaterThan",
"threshold": 20,
"locale": "en-us",
"contactEmails": [
"user@contoso.com"
],
"contactRoles": [],
"contactGroups": [],
"thresholdType": "Actual"
}
}
}
}
Bahasa yang didukung oleh kode budaya:
Kode budaya | Bahasa |
---|---|
id-id | Inggris (Amerika Serikat) |
ja-jp | Jepang (Jepang) |
zh-cn | Bahasa Mandarin (Sederhana, Tiongkok) |
de-de | Jerman (Jerman) |
es-es | Bahasa Spanyol (Spanyol, Internasional) |
fr-fr | Prancis (Prancis) |
it-it | Italia (Italia) |
ko-kr | Korea (Korea) |
pt-br | Portugis (Brasil) |
ru-ru | Rusia (Rusia) |
zh-tw | Bahasa Mandarin (Tradisional, Taiwan) |
cs-cz | Bahasa Ceko (Republik Ceko) |
pl-pl | Polandia (Polandia) |
tr-tr | Turki (Türkiye) |
da-dk | Denmark (Denmark) |
en-gb | Inggris (Kerajaan Inggris Bersatu) |
hu-hu | Bahasa Hungaria (Hungaria) |
nb-no | Bahasa Bokmal Norwegia (Norwegia) |
nl-nl | Bahasa Belanda (Belanda) |
pt-pt | Portugis (Portugal) |
sv-se | Swedia (Swedia) |
Konfigurasi API Anggaran umum
Ada banyak cara untuk mengonfigurasi anggaran di lingkungan Azure. Pertimbangkan skenario Anda terlebih dahulu, lalu identifikasi opsi konfigurasi yang mengaktifkannya. Lihat opsi berikut:
- Time Grain - Mewakili periode berulang yang digunakan anggaran Anda untuk mengumpulkan dan mengevaluasi biaya. Opsi yang paling umum adalah Bulanan, Triwulanan, dan Tahunan.
- Periode Waktu - Mewakili berapa lama anggaran Anda valid. Anggaran secara aktif memantau dan memberi tahu Anda hanya saat anggaran tetap valid.
- Pemberitahuan
- Email Kontak - Alamat email menerima pemberitahuan saat anggaran mengumpulkan biaya dan melebihi ambang yang ditentukan.
- Peran Kontak - Semua pengguna yang memiliki peran Azure yang cocok pada cakupan tertentu menerima pemberitahuan email dengan opsi ini. Misalnya, Pemilik Langganan dapat menerima pemberitahuan untuk anggaran yang dibuat di cakupan langganan.
- Grup Kontak - Anggaran memanggil grup tindakan yang dikonfigurasi saat ambang pemberitahuan terlampaui.
- Filter dimensi biaya - Pemfilteran yang sama yang dapat Anda lakukan di Analisis Biaya atau API Kueri juga dapat dilakukan di anggaran Anda. Gunakan filter ini untuk mengurangi rentang biaya yang Anda pantau dengan anggaran.
Setelah mengidentifikasi opsi pembuatan anggaran yang memenuhi kebutuhan Anda, buat anggaran menggunakan API. Contoh di bawah membantu Anda memulai konfigurasi anggaran umum.
Membuat anggaran yang difilter ke beberapa sumber daya dan tag
URL Permintaan: PUT https://management.azure.com/subscriptions/{SubscriptionId} /providers/Microsoft.Consumption/budgets/{BudgetName}/?api-version=2019-10-01
{
"eTag": "\"1d34d016a593709\"",
"properties": {
"category": "Cost",
"amount": 100.65,
"timeGrain": "Monthly",
"timePeriod": {
"startDate": "2017-10-01T00:00:00Z",
"endDate": "2018-10-31T00:00:00Z"
},
"filter": {
"and": [
{
"dimensions": {
"name": "ResourceId",
"operator": "In",
"values": [
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{meterName}",
"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{meterName}"
]
}
},
{
"tags": {
"name": "category",
"operator": "In",
"values": [
"Dev",
"Prod"
]
}
},
{
"tags": {
"name": "department",
"operator": "In",
"values": [
"engineering",
"sales"
]
}
}
]
},
"notifications": {
"Actual_GreaterThan_80_Percent": {
"enabled": true,
"operator": "GreaterThan",
"threshold": 80,
"contactEmails": [
"user1@contoso.com",
"user2@contoso.com"
],
"contactRoles": [
"Contributor",
"Reader"
],
"contactGroups": [
"/subscriptions/{subscriptionID}/resourceGroups/{resourceGroupName}/providers/microsoft.insights/actionGroups/{actionGroupName}
],
"thresholdType": "Actual"
}
}
}
}
Mengonfigurasi orkestrasi berbasis biaya untuk pemberitahuan anggaran
Anda dapat mengonfigurasi anggaran untuk memulai tindakan otomatis menggunakan Grup Tindakan Azure. Untuk mempelajari selengkapnya tentang mengotomatiskan tindakan menggunakan anggaran, lihat Otomatisasi dengan anggaran.
Latensi data dan batas tarif
Sebaiknya panggil API tidak lebih dari sekali per hari. Data Cost Management di-refresh setiap empat jam karena data penggunaan baru diterima dari penyedia sumber daya Azure. Memanggil lebih sering tidak menyediakan lebih banyak data. Sebaliknya, membuat peningkatan beban.
Unit pemrosesan kueri API Kueri
Selain proses pembatasan tarif yang ada, API Kueri juga membatasi pemrosesan berdasarkan biaya panggilan API. Biaya panggilan API dinyatakan sebagai unit pemrosesan kueri (QPU). QPU adalah mata uang performa, seperti RU Cosmos DB. Sumber daya sistem abstrak seperti CPU dan memori.
Perhitungan QPU
Saat ini, satu QPU dikurangi selama satu bulan data yang dikueri dari kuota yang dialokasikan. Logika ini mungkin berubah tanpa pemberitahuan.
Faktor QPU
Faktor berikut memengaruhi jumlah QPU yang digunakan oleh permintaan API.
- Rentang tanggal, saat rentang tanggal dalam permintaan meningkat, jumlah QPU yang dikonsumsi meningkat.
Faktor QPU lainnya mungkin ditambahkan tanpa pemberitahuan.
Kuota QPU
Kuota berikut dikonfigurasi per penyewa. Permintaan dibatasi ketika salah satu kuota berikut habis.
- 12 QPU per 10 detik
- 60 QPU per 1 menit
- 600 QPU per 1 jam
Kuota mungkin diubah sesuai kebutuhan dan lebih banyak kuota dapat ditambahkan.
Header respons
Anda dapat memeriksa header respons untuk melacak jumlah QPU yang digunakan oleh permintaan API dan jumlah QPU yang tersisa.
x-ms-ratelimit-microsoft.costmanagement-qpu-retry-after
Menunjukkan waktu untuk back-off dalam detik. Ketika permintaan dibatasi dengan 429, mundur untuk waktu yang ditentukan di header ini sebelum mencoba kembali permintaan.
x-ms-ratelimit-microsoft.costmanagement-qpu-consumed
QPU yang digunakan oleh panggilan API.
x-ms-ratelimit-microsoft.costmanagement-qpu-remaining
Daftar kuota yang tersisa.
Langkah berikutnya
- Menganalisis biaya Azure dengan aplikasi templat Power BI.
- Membuat dan mengelola data yang diekspor dengan Ekspor.
- Pelajari lebih lanjut tentang API Detail Penggunaan.