Sintaks variabel - Amazon Managed Grafana

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Sintaks variabel

Topik dokumentasi ini dirancang untuk ruang kerja Grafana yang mendukung Grafana versi 10.x.

Untuk ruang kerja Grafana yang mendukung Grafana versi 9.x, lihat. Bekerja di Grafana versi 9

Untuk ruang kerja Grafana yang mendukung Grafana versi 8.x, lihat. Bekerja di Grafana versi 8

Judul panel dan kueri metrik dapat merujuk ke variabel menggunakan dua sintaks yang berbeda.

  • $varname— Sintaks ini mudah dibaca, tetapi tidak memungkinkan Anda untuk menggunakan variabel di tengah kata.

    Contoh: apps.frontend.$server.requests.count

  • ${var_name}— Gunakan sintaks ini ketika Anda ingin menggunakan variabel di tengah ekspresi.

  • ${var_name:<format>}— Format ini memberi Anda kontrol lebih besar atas bagaimana Grafana menafsirkan nilai. Untuk informasi selengkapnya, lihat Opsi format variabel lanjutan, mengikuti daftar ini.

  • [[varname]]- Jangan gunakan. Sintaks ini sudah tua dan sudah usang. Ini akan dihapus dalam rilis future.

Sebelum kueri dikirim ke sumber data Anda, kueri diinterpolasi, artinya variabel diganti dengan nilai saat ini. Selama interpolasi, nilai variabel mungkin lolos agar sesuai dengan sintaks bahasa kueri dan di mana ia digunakan. Misalnya, variabel yang digunakan dalam ekspresi regex dalam kueri InfluxDB atau Prometheus akan diloloskan regex.

Opsi format variabel lanjutan

Pemformatan interpolasi variabel tergantung pada sumber data, tetapi ada beberapa situasi di mana Anda mungkin ingin mengubah format default.

Misalnya, default untuk sumber data MySQL adalah menggabungkan beberapa nilai sebagai dipisahkan koma dengan tanda kutip:. 'server01','server02' Dalam beberapa kasus, Anda mungkin ingin memiliki string yang dipisahkan koma tanpa tanda kutip:. server01,server02 Anda dapat mewujudkannya dengan opsi pemformatan variabel lanjutan yang tercantum di bawah ini.

Sintaks umum

Sintaks: ${var_name:option}

Jika ada opsi pemformatan yang tidak valid ditentukan, maka glob adalah opsi default/fallback.

CSV

Memformat variabel dengan beberapa nilai sebagai string yang dipisahkan koma.

servers = [ 'test1', 'test2' ] String to interpolate: '${servers:csv}' Interpolation result: 'test1,test2'

Didistribusikan - OpenTSDB

Memformat variabel dengan beberapa nilai dalam format khusus untuk OpenTSDB.

servers = [ 'test1', 'test2' ] String to interpolate: '${servers:distributed}' Interpolation result: 'test1,servers=test2'

Kutipan ganda

Memformat variabel tunggal dan multi-nilai menjadi string yang dipisahkan koma, lolos " di setiap nilai dengan \" dan mengutip setiap nilai dengan. "

servers = [ 'test1', 'test2' ] String to interpolate: '${servers:doublequote}' Interpolation result: '"test1","test2"'

Glob - Grafit

Memformat variabel dengan beberapa nilai menjadi gumpalan (untuk kueri Grafit).

servers = [ 'test1', 'test2' ] String to interpolate: '${servers:glob}' Interpolation result: '{test1,test2}'

JSON

Memformat variabel dengan beberapa nilai sebagai string yang dipisahkan koma.

servers = [ 'test1', 'test2' ] String to interpolate: '${servers:json}' Interpolation result: '["test1", "test2"]'

Lucene - Elasticsearch

Memformat variabel dengan beberapa nilai dalam format Lucene untuk Elasticsearch.

servers = [ 'test1', 'test2' ] String to interpolate: '${servers:lucene}' Interpolation result: '("test1" OR "test2")'

Kode Persentase

Memformat variabel tunggal dan multivalued untuk digunakan dalam parameter URL.

servers = [ 'foo()bar BAZ', 'test2' ] String to interpolate: '${servers:percentencode}' Interpolation result: 'foo%28%29bar%20BAZ%2Ctest2'

Pipa

Memformat variabel dengan beberapa nilai menjadi string yang dipisahkan pipa.

servers = [ 'test1.', 'test2' ] String to interpolate: '${servers:pipe}' Interpolation result: 'test1.|test2'

Mentah

Menonaktifkan pemformatan khusus sumber data, seperti tanda kutip tunggal dalam kueri SQL.

servers = [ 'test.1', 'test2' ] String to interpolate: '${var_name:raw}' Interpolation result: 'test.1,test2'

Regex

Memformat variabel dengan beberapa nilai menjadi string regex.

servers = [ 'test1.', 'test2' ] String to interpolate: '${servers:regex}' Interpolation result: '(test1\.|test2)'

Singlequote

Memformat variabel tunggal dan multi-nilai menjadi string yang dipisahkan koma, lolos ' di setiap nilai dengan \' dan mengutip setiap nilai dengan. '

servers = [ 'test1', 'test2' ] String to interpolate: '${servers:singlequote}' Interpolation result: "'test1','test2'"

Sqlstring

Memformat variabel tunggal dan multi-nilai menjadi string yang dipisahkan koma, lolos ' di setiap nilai dengan '' dan mengutip setiap nilai dengan. '

servers = [ "test'1", "test2" ] String to interpolate: '${servers:sqlstring}' Interpolation result: "'test''1','test2'"

Teks

Memformat variabel tunggal dan multi-nilai ke dalam representasi teks mereka. Untuk satu variabel, itu hanya akan mengembalikan representasi teks. Untuk variabel multi-nilai, itu akan mengembalikan representasi teks yang digabungkan dengan+.

servers = [ "test1", "test2" ] String to interpolate: '${servers:text}' Interpolation result: "test1 + test2"

Parameter kueri

Memformat variabel tunggal dan multi-nilai ke dalam representasi parameter kueri mereka. Contoh: var-foo=value1&var-foo=value2

servers = [ "test1", "test2" ] String to interpolate: '${servers:queryparam}' Interpolation result: "var-servers=test1&var-servers=test2"