Mengimpor dasbor Grafana ke Cloud Monitoring

Dokumen ini menjelaskan cara mengimpor file dasbor dalam format JSON Grafana ke Cloud Monitoring. Anda dapat mengimpor dasbor Grafana dengan cara berikut:

Proses impor mengonversi file dasbor dalam format JSON yang digunakan oleh Grafana ke dalam format JSON yang digunakan oleh Cloud Monitoring. Dasbor yang dikonversi mungkin berbeda dengan dasbor Grafana asli. Misalnya, jika dasbor Grafana menggunakan fitur yang tidak tersedia di dasbor Cloud Monitoring, aspek dasbor Grafana tersebut tidak akan dikonversi. Perbedaan ini dicantumkan dalam hasil impor.

Anda hanya dapat mengimpor dasbor yang menggunakan ekspresi PromQL dan sumber data Prometheus. Dasbor yang menggunakan bentuk kueri atau sumber data lain mungkin tidak berhasil diimpor.

Untuk mengetahui informasi tentang cara mengimpor pemberitahuan Prometheus ke Cloud Monitoring, lihat Memigrasikan aturan pemberitahuan dan penerima dari Prometheus.

Untuk mengetahui informasi umum tentang cara mengelola dasbor yang diimpor, lihat Membuat dan mengelola dasbor kustom.

Sebelum memulai

Baik Anda menggunakan konsol Google Cloud atau alat pengimpor untuk mengimpor dasbor, Anda harus memiliki otorisasi yang memadai, dan Anda memerlukan dasbor untuk diimpor. Saat menggunakan alat pengimpor, ada prasyarat tambahan.

Otorisasi

Untuk mendapatkan izin yang diperlukan untuk membuat dan mengubah dasbor kustom, minta administrator untuk memberi Anda peran IAM Monitoring Editor (roles/monitoring.editor) di project Anda. Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat Mengelola akses ke project, folder, dan organisasi.

Anda mungkin juga bisa mendapatkan izin yang diperlukan melalui peran kustom atau peran yang telah ditentukan lainnya.

Untuk mengetahui informasi selengkapnya tentang peran, lihat Mengontrol akses dengan Identity and Access Management.

Kumpulkan dasbor Grafana yang akan diimpor

Untuk mengimpor dasbor Grafana, Anda harus menyimpannya secara lokal sebagai file dalam format JSON. Anda mungkin ingin membuat direktori khusus untuk file dasbor ini.

Mengimpor dasbor menggunakan konsol Google Cloud

Anda dapat mengimpor dasbor Grafana ke Cloud Monitoring dari halaman Dasbor Monitoring di konsol Google Cloud .

Mengimpor dasbor Grafana

Untuk mengimpor satu atau beberapa dasbor Grafana, lakukan hal berikut

  1. Di konsol Google Cloud , buka halaman  Dashboards:

    Buka Dasbor

    Jika Anda menggunakan kotak penelusuran untuk menemukan halaman ini, pilih hasil yang subjudulnya adalah Monitoring.

  2. Di toolbar konsol Google Cloud , pilih project Google Cloud Anda. Untuk konfigurasi App Hub, pilih project host App Hub atau project pengelolaan folder yang mendukung aplikasi.

  3. Klik Impor Dasbor.

  4. Klik Browse untuk membuka direktori tempat Anda menyimpan dasbor Grafana dalam format JSON, lalu pilih dasbor yang ingin Anda impor.

    Setiap file JSON akan dipentaskan setelah dipilih; panel Staged Files menunjukkan apakah ada masalah dalam konversi.

    • Klik  Lihat JSON yang dikonversi untuk melihat hasil konversi.
    • Klik  Hapus file untuk menghapus dasbor dari operasi impor.
  5. Klik  Impor. Panel Hasil impor menunjukkan apakah setiap dasbor berhasil diimpor atau tidak.

  6. Untuk melihat dasbor yang berhasil diimpor, klik  Lihat.

Melihat dasbor yang diimpor

Untuk melihat dasbor yang diimpor, lakukan tindakan berikut:

  1. Di konsol Google Cloud , buka halaman  Dashboards:

    Buka Dasbor

    Jika Anda menggunakan kotak penelusuran untuk menemukan halaman ini, pilih hasil yang subjudulnya adalah Monitoring.

  2. Di toolbar konsol Google Cloud , pilih project Google Cloud Anda. Untuk konfigurasi App Hub, pilih project host App Hub atau project pengelolaan folder yang mendukung aplikasi.
  3. Temukan dasbor yang ingin Anda lihat dalam daftar. Untuk memfilter daftar dasbor, Anda dapat melakukan hal berikut:

    • Di menu Type, pilih Custom.
    • Di panel Labels, pilih label cloud-monitoring-dashboard-importer untuk hanya melihat dasbor Grafana yang diimpor menggunakan konsol Google Cloud .

    • Gunakan penelusuran panel filter menurut nama.

Menambahkan atau menghapus label yang ditentukan pengguna

Anda hanya dapat menambahkan label ke dasbor kustom, yang mencakup dasbor yang Anda impor. Jika dasbor menampilkan tombol Tambahkan label ke dasbor, Anda dapat mengonfigurasi label yang diterapkan ke dasbor.

Untuk menambahkan atau menghapus label yang ditentukan pengguna ke dasbor, lakukan tindakan berikut:

  1. Di konsol Google Cloud , buka halaman  Dashboards:

    Buka Dasbor

    Jika Anda menggunakan kotak penelusuran untuk menemukan halaman ini, pilih hasil yang subjudulnya adalah Monitoring.

  2. Dalam daftar dasbor, cari dasbor, lalu klik Tambahkan label ke dasbor.
  3. Lakukan salah satu tindakan berikut:
    • Untuk membuat label dan menambahkannya ke dasbor, di bagian Buat label baru, masukkan nama label di kotak teks, lalu klik Buat dan terapkan.

    • Untuk mengonfigurasi label yang ditambahkan ke dasbor Anda, klik Pilih label yang akan diterapkan, pilih label, lalu klik Oke.
  4. Untuk menyimpan perubahan, klik Konfirmasi.

Mengimpor dasbor menggunakan alat pengimpor

Anda dapat menggunakan alat pengimpor untuk mengonversi dasbor Grafana dan menguploadnya ke Cloud Monitoring sebagai satu operasi, atau Anda dapat melakukan langkah-langkah konversi dan upload secara terpisah. Anda dapat memilih pendekatan ini jika ingin mengedit dasbor yang dikonversi sebelum menguploadnya.

Prasyarat tambahan

Sebelum dapat menginstal dan menjalankan pengimpor dasbor, Anda harus melakukan hal berikut:

  1. Gunakan lingkungan yang mendukung skrip shell Bash.
  2. Memiliki atau menginstal Git.
  3. Memiliki atau menginstal Node.js, versi 20.4.1 atau yang lebih baru.
  4. Memiliki atau menginstal Google Cloud CLI. Jika Anda sudah menginstal gcloud CLI, pastikan Anda memiliki versi terbaru dengan menjalankan perintah gcloud components update.

Mendapatkan pengimpor dasbor

Pengimpor dasbor disimpan di repositori GitHub monitoring-dashboard-samples. Untuk mendapatkan dan menyiapkan pengimpor, lakukan hal berikut:

  1. Meng-cloning repository

    git clone https://github.com/GoogleCloudPlatform/monitoring-dashboard-samples
    
  2. Ubah ke direktori untuk pengimpor dasbor:

    cd monitoring-dashboard-samples/scripts/dashboard-importer
    
  3. Instal modul node dan buat file

    npm install && npm run build
    

Pengimpor dasbor mencakup skrip berikut:

  • import.sh, yang mengonversi dasbor dan secara opsional mengupload dasbor yang dikonversi ke Cloud Monitoring.

  • upload.sh, yang mengupload dasbor yang dikonversi—atau dasbor Monitoring apa pun—ke Cloud Monitoring. Skrip import.sh memanggil skrip ini untuk melakukan upload.

Saat menggunakan skrip import.sh, Anda harus menentukan lokasi dasbor Grafana yang akan dikonversi. Pengimpor membuat direktori yang berisi dasbor yang dikonversi dan informasi lainnya. Bagian berikut menjelaskan direktori ini.

Dasbor Grafana yang akan dikonversi

Anda dapat menggunakan pengimpor dasbor untuk mengonversi satu atau beberapa dasbor sekaligus dengan menentukan jalur ke file dasbor.

  • Anda dapat menentukan jalur ke direktori yang berisi dasbor. Hanya file dalam direktori yang memiliki ekstensi .json yang diproses.

  • Anda dapat menentukan jalur ke satu file JSON. Nama file harus memiliki ekstensi .json.

Dasbor yang dikonversi dan informasi lainnya

Saat dijalankan untuk pertama kalinya, pengimpor akan membuat subdirektori reports. Setiap kali Anda menjalankan pengimpor, Anda akan mendapatkan direktori output baru di bawah direktori reports, yang diberi nama berdasarkan tanggal dan waktu. Nama direktori output memiliki struktur berikut:
reports/YYYY-M-D/HH:MM:SS

Untuk setiap pemanggilan pengimpor, direktori output berisi hal-hal berikut:

  • File dengan nama yang sama dengan dasbor Grafana asli, tetapi sekarang dalam format JSON Cloud Monitoring.
  • File report.json, yang mencatat informasi berikut untuk setiap dasbor yang dikonversi:
    • Nama dan lokasi file dasbor Grafana yang dikonversi.
    • Nama dan lokasi file dasbor Pemantauan yang dikonversi.
    • Pemberitahuan tentang fitur apa pun di dasbor Grafana yang tidak memiliki fitur yang sesuai di Cloud Monitoring sehingga tidak dapat disertakan dalam dasbor yang dikonversi.
    • Error apa pun yang terjadi dalam konversi.

Jika Anda telah mengupload dasbor, direktori laporan juga menyertakan file upload_HH:MM:SS.txt, yang menyertakan URL tempat dasbor diupload.

Mengimpor dasbor Grafana

Untuk mengonversi dasbor Grafana dan menguploadnya ke Cloud Monitoring, gunakan skrip import.sh:

./import.sh PATH_TO_DIRECTORY_OR_FILE PROJECT_ID

Skrip ini melakukan hal berikut:

  1. Mengonversi dasbor dalam PATH_TO_DIRECTORY_OR_FILE dari format JSON yang digunakan oleh Grafana ke format JSON yang digunakan oleh Cloud Monitoring.
  2. Mengupload dasbor yang dikonversi ke Google Cloud project PROJECT_ID Anda menggunakan Google Cloud CLI.

    Jika Anda belum melakukan autentikasi ke gcloud CLI, jalankan perintah gcloud auth login sebelum menjalankan skrip import.sh.

Anda dapat mengimpor semua dasbor Grafana dalam direktori, atau menentukan satu dasbor dalam direktori untuk diimpor.

  • Untuk mengimpor semua dasbor di direktori GRAFANA_DASHBOARDS_DIR ke project PROJECT_ID Google Cloud , tentukan direktori, relatif terhadap direktori pengimpor, dan project ID tujuan saat memanggil skrip:

    ./import.sh GRAFANA_DASHBOARDS_DIR PROJECT_ID
    
  • Untuk mengonversi hanya dasbor MY_GRAFANA_DASHBOARD.json di direktori GRAFANA_DASHBOARDS_DIR, sertakan nama file dasbor, relatif terhadap direktori pengimpor, saat memanggil skrip:

    ./import.sh GRAFANA_DASHBOARDS_DIR/MY_GRAFANA_DASHBOARD.json PROJECT_ID
    

Pengimpor dasbor menyertakan contoh dasbor Grafana sebagai examples/k8s_cluster_example.json. Perintah berikut mengimpor dasbor tersebut ke project yang ditentukan:

./import.sh examples/k8s_cluster_example.json PROJECT_ID

Saat dipanggil dengan PROJECT_ID my-project-test-1, outputnya akan terlihat seperti berikut:

Converting: Kubernetes Cluster Overview
✓ Kubernetes Cluster Overview converted successfully

Conversion of examples/k8s_cluster_example.json complete. Conversion Report located at: reports/2023-9-28/22:14:57/report.json

To upload these dashboard(s) manually, you can run:
./upload.sh reports/2023-9-28/22:14:57/ <PROJECT_ID>

Conversion Complete. Proceeding to uploading...

Now running: ./upload.sh reports/2023-9-28/22:14:57/ my-project-test-1

Uploading 1 dashboard(s) from a directory with the following args:
Directory: reports/2023-9-28/22:14:57/
Project: my-project-test-1

The following are your dashboards:
- k8s_cluster_example.json

Setelah skrip import.sh membuat direktori output dan mengonversi dasbor, tetapi sebelum mengupload dasbor yang dikonversi ke project Anda, skrip akan meminta konfirmasi Anda. Masukkan y, dan skrip akan mengupload dasbor serta mencetak URL untuk dasbor baru:

Would you like to continue? (y/n) y

✓ k8s_cluster_example.json successfully uploaded:
https://console.cloud.google.com/monitoring/dashboards/builder/9c341ef8-cfef-4bdd-98d5-821571c520ef?project=my-project-test-1

Upload log created in reports/2023-9-28/22:14:57/upload_22:14:57.txt

Need to troubleshoot? Please visit:
https://github.com/GoogleCloudPlatform/monitoring-dashboard-samples/tree/master/scripts/dashboard-importer/README.md#troubleshooting

Mengonversi dasbor Grafana tanpa mengupload

Jika Anda ingin memeriksa atau mengedit dasbor yang dikonversi sebelum menguploadnya, hapus nilai PROJECT_ID saat memanggil skrip import.sh:

./import.sh PATH_TO_DIRECTORY_OR_FILE

Pengimpor mengonversi dasbor seperti yang dijelaskan dalam Mengimpor dasbor Grafana tetapi tidak mengupload dasbor yang dikonversi ke Cloud Monitoring.

Anda dapat menjalankan langkah upload nanti, dengan menggunakan skrip upload.sh secara manual.

Mengupload dasbor secara manual

Untuk mengupload dasbor secara manual dalam format JSON Cloud Monitoring, gunakan skrip upload.sh.

    ./upload.sh PATH_TO_DIRECTORY_OR_FILE PROJECT_ID

Skrip upload.sh menggunakan Google Cloud CLI untuk mengupload file JSON. Jika Anda belum melakukan autentikasi ke gcloud CLI, jalankan perintah gcloud auth login sebelum menjalankan skrip upload.sh.

  • Untuk mengupload semua dasbor di direktori reports/YYYY-M-D/HH:MM:SS, tentukan direktori, relatif terhadap direktori pengimpor, dan project ID tujuan saat memanggil skrip:

    ./upload.sh reports/YYYY-M-D/HH:MM:SS PROJECT_ID
    

    Saat mengupload semua dasbor dari direktori, skrip akan meminta Anda untuk melanjutkan atau keluar sebelum mengupload dasbor.

  • Untuk mengupload dasbor tertentu di direktori reports/YYYY-M-D/HH:MM:SS, tentukan direktori dan nama file, relatif terhadap direktori pengimpor, dan project ID tujuan saat memanggil skrip:

    ./upload.sh reports/YYYY-M-D/HH:MM:SS/MY_MONITORING_DASHBOARD.json PROJECT_ID
    

    Saat mengupload satu dasbor dari direktori, skrip berjalan tanpa meminta Anda sebelum mengupload dasbor.

Misalnya, perintah berikut mengupload dasbor yang disimpan di subdirektori reports ke project Google Cloud my-project-test-1:

./upload.sh reports/2023-9-26/22:48:31/k8s_cluster_example.json my-project-test-1
Uploading json file: k8s_cluster_example.json to project: my-project-test-1...

✓ k8s_cluster_example.json successfully uploaded:
https://console.cloud.google.com/monitoring/dashboards/builder/25956d9a-93e2-410c-ada1-ec6872cb6665?project=my-project-test-1

Melihat dasbor yang Anda upload

Untuk melihat dasbor yang diupload, lakukan tindakan berikut:

  1. Di konsol Google Cloud , buka halaman  Dashboards:

    Buka Dasbor

    Jika Anda menggunakan kotak penelusuran untuk menemukan halaman ini, pilih hasil yang subjudulnya adalah Monitoring.

  2. Temukan dasbor yang ingin Anda lihat dalam daftar. Untuk memfilter daftar dasbor, Anda dapat melakukan hal berikut:

    • Pilih kategori Kustom untuk hanya melihat dasbor yang ditentukan pengguna.
    • Pilih label cloud-ops-grafana-importer untuk hanya melihat dasbor Grafana yang diimpor menggunakan alat pengimpor.
    • Gunakan penelusuran panel filter menurut nama.

Pemecahan masalah

Terkadang kami memublikasikan update kecil dan perbaikan bug pada alat ini. Sebelum mencoba pemecahan masalah lebih lanjut, coba perbaiki masalah terlebih dahulu dengan menggunakan git pull untuk menarik versi terbaru repositori, lalu impor lagi.

Untuk mengetahui informasi tentang masalah pada dasbor yang dikonversi, seperti diagram yang tidak menampilkan data, lihat file README pengimpor.

Langkah berikutnya