Rumah  >  Artikel  >  pembangunan bahagian belakang  >  PHP melaksanakan platform visualisasi data Grafana sumber terbuka

PHP melaksanakan platform visualisasi data Grafana sumber terbuka

WBOY
WBOYasal
2023-06-18 15:14:161257semak imbas

Grafana ialah platform visualisasi data sumber terbuka yang popular yang membolehkan pengguna memaparkan data kompleks dengan mudah pada papan pemuka. Dan PHP ialah bahasa skrip yang digunakan secara meluas untuk membangunkan aplikasi web dinamik. Dalam artikel ini, kami akan memperkenalkan cara melaksanakan platform visualisasi data Grafana menggunakan PHP.

1. Pasang Grafana

Pertama, kita perlu memasang pelayan Grafana. Binari yang sesuai untuk sistem pengendalian anda boleh dimuat turun dari laman web rasmi Grafana. Proses pemasangan adalah sangat mudah, cuma ikut arahan dan anda selesai.

2. Buat sumber data

Dalam Grafana, sumber data ialah konfigurasi yang menyambung kepada sumber data luaran. Contohnya, anda boleh menyambung ke pangkalan data siri masa (seperti InfluxDB) atau titik akhir API untuk mendapatkan semula data. Di sini kami akan menggunakan InfluxDB sebagai sumber data kami.

Untuk mencipta sumber data dalam Grafana, buka antara muka web Grafana dan log masuk. Seterusnya, navigasi ke pilihan Sumber Data dalam menu Konfigurasi. Kemudian, klik butang "Tambah Sumber Data", pilih "influxdb" sebagai jenis, dan isikan butiran yang sesuai seperti nama pangkalan data, nama pengguna dan kata laluan.

3. Cipta panel dan penunjuk

Dalam Grafana, panel ialah kawasan di mana komponen visual (seperti graf, jadual dan penunjuk ukuran) diletakkan. Metrik ialah titik pengukuran data sumber.

Untuk membuat panel dan metrik dalam Grafana, buka antara muka web Grafana dan log masuk. Seterusnya, klik Panel Baharu dan pilih nama. Seterusnya, klik butang Tambah Pertanyaan untuk membuka Editor Pertanyaan.

Dalam editor pertanyaan, masukkan pernyataan pertanyaan untuk mendapatkan semula data. Sebagai contoh, berikut ialah contoh pertanyaan untuk mendapatkan semula metrik InfluxDB dengan label tertentu:

PILIH min("nilai") DARI "suhu" DI MANA ("lokasi" = 'bilik1') DAN $timeFilter KUMPULAN MENGIKUT masa ($__interval) fill(null)

Anda boleh menambah tag anda sendiri mengikut keperluan, seperti suhu, kelembapan, tekanan, dsb.

4. Sambungan Grafana menggunakan PHP

Kini kami telah mencipta pelayan Grafana yang dikonfigurasikan dan telah menentukan metrik dan panel yang kami minati. Seterusnya, kami akan menggunakan PHP untuk melanjutkan fungsi Grafana.

Untuk menulis pemalam Grafana menggunakan PHP, sila ikut langkah berikut:

  1. Letakkan kod pemalam ke dalam folder pemalam dalam direktori pemasangan Grafana.
  2. Buat fail PHP, seperti "plugin.php", dan tulis kod di dalamnya untuk melanjutkan Grafana.

Berikut ialah kod contoh pemalam mudah:

53d1edd8390e3afe60895ee6aadf5762dashboard('TestDashboard');
$dashboard->addPanel(' TestPanel' , 1, 1)

      ->setPanelType('graph')
      ->setQuery('SELECT mean("value") FROM "temperature" WHERE ("location" = 'room1') AND $timeFilter GROUP BY time($__interval) fill(null)')
      ->setVisualization('graph');

$grafana->register($dashboard);

?>

Kod ini akan mencipta Grafana bernama "TestDashboard" Papan pemuka dan buat panel yang dipanggil "TestPanel" pada panel itu. Ia kemudiannya akan mentakrifkan pertanyaan yang dipanggil "graf".

Akhir sekali, kod akan mendaftarkan papan pemuka ke dalam Grafana dengan memanggil kaedah "register()".

5. Ringkasan

Dalam artikel ini, kami memperkenalkan cara menggunakan PHP untuk melanjutkan fungsi Grafana. Kami mula-mula memasang pelayan Grafana dan kemudian menentukan metrik dan panel yang kami minati. Akhir sekali, kami menulis kod PHP untuk melanjutkan fungsi Grafana dan menambah panel dan pertanyaan baharu kepadanya. Melalui langkah ini, kami boleh membina Grafana ke dalam platform visualisasi data fleksibel yang kami perlukan.

Atas ialah kandungan terperinci PHP melaksanakan platform visualisasi data Grafana sumber terbuka. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn