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