All Products
Search
Document Center

Simple Log Service:Fungsi templat bawaan

Last Updated:Jun 17, 2026

Fungsi bawaan untuk templat konten memungkinkan Anda memanipulasi data serta memperkaya format dan gaya Notifikasi. Topik ini menjelaskan sintaksis dan contoh fungsi bawaan tersebut.

Fungsi umum

Math functions

Function

Description

Filter

Example

float(value, default=0.0)

Mengonversi bilangan bulat atau string menjadi bilangan titik mengambang.

Jika konversi gagal, fungsi ini secara default mengembalikan 0.0. Gunakan parameter default untuk menentukan nilai kembali yang berbeda jika konversi gagal.

Supported

  • Hasil dari {{ float("123") }} adalah 123.0.

  • Hasil dari {{ float("foo") }} adalah 0.0.

  • Hasil dari {{ float("foo", default=1.23) }} adalah 1.23.

int(value, default=0)

Mengonversi string atau angka menjadi bilangan bulat.

Jika konversi gagal, fungsi ini secara default mengembalikan 0. Gunakan parameter default untuk menentukan nilai kembali yang berbeda jika konversi gagal.

Support

  • Hasil dari {{ int(1.23) }} adalah 1.

  • Hasil dari {{ int("1.23") }} adalah 1.

  • Hasil dari {{ int("foo") }} adalah 0.

  • Hasil dari {{ int("foo", default=5) }} adalah 5.

length(value)

Mengembalikan panjang atau jumlah item dalam suatu objek, seperti string, daftar, atau Tupel.

Supported

  • Hasil dari {{ length("foo") }} adalah 3.

  • Hasil dari {{ length([1, 2]) }} adalah 2.

  • Hasil dari {{ length({"foo": "bar"}) }} adalah 1.

abs(value)

Mengembalikan nilai absolut suatu angka.

Support

Hasil dari {{ abs(-1) }} adalah 1.

min(value)

Mengembalikan nilai minimum.

Support

Hasil dari {{ min([1, 3, 2]) }} adalah 1.

max(value)

Mengembalikan nilai maksimum.

Supported

Hasil dari {{ max([1, 3, 2]) }} adalah 3.

ceil(value)

Membulatkan angka ke atas ke bilangan bulat terdekat.

Support

Hasil dari {{ ceil(1.23) }} adalah 2.

floor(value)

Membulatkan angka ke bawah ke bilangan bulat terdekat.

Supported

Hasil dari {{ floor(1.23) }} adalah 1.

round(value, 1)

Membulatkan angka ke bilangan bulat terdekat.

Argumen tersebut menentukan jumlah tempat desimal yang dipertahankan. Misalnya, 1 mempertahankan satu tempat desimal.

Support

  • Hasil dari {{ round(1.23) }} adalah 1.

  • Hasil dari {{ round(1.56) }} adalah 2.

  • Hasil dari {{ round(1.56, 1) }} adalah 1.6.

sum(value)

Menghitung jumlah total.

Supported

Hasil dari {{ sum([1, 2, 3]) }} adalah 6.

String functions

Function

Description

Filter

Example

string(value)

Mengonversi objek menjadi string.

Support

Hasil dari {{ string(1.23) }} adalah 1.23.

Dalam kasus ini, 1.23 adalah string.

capitalize(value)

Mengonversi karakter pertama string menjadi huruf kapital dan semua karakter lainnya menjadi huruf kecil.

Support

Hasil dari {{ capitalize("heLLO World") }} adalah Hello world.

lower(value)

Mengonversi string menjadi huruf kecil.

Support

Hasil dari {{ lower("FOO") }} adalah foo.

upper(value)

Mengonversi string menjadi huruf kapital.

Support

Hasil dari {{ upper("foo") }} adalah FOO.

title(value)

Mengembalikan versi string dengan format judul, di mana karakter pertama setiap kata menjadi huruf kapital dan sisanya huruf kecil.

Support

Hasil dari {{ title("hello world") }} adalah Hello World.

trim(value)

Menghapus spasi putih dari awal dan akhir string.

Supported

Hasil dari {{ trim(" foo\n") }} adalah foo.

replace(value, old, new)

Mengganti substring dalam string.

Not supported

Hasil dari {{ replace("foo", "oo", "ly") }} adalah fly.

wordcount(value)

Menghitung jumlah kata dalam string.

Support

Hasil dari {{ wordcount("hello world") }} adalah 2.

truncate(value, n, end='')

Memotong string.

  • Gunakan `truncate(value, n)` untuk menentukan jumlah karakter yang dipertahankan.

  • Gunakan `truncate(value, n, end='...')` untuk menentukan akhiran yang ditambahkan.

Not supported

  • Hasil dari {{ truncate("foo bar", 5) }} adalah foo b.

  • Hasil dari {{ truncate("foo bar", 5, end="...") }} adalah foo b....

quote(value)

Menutup string dengan tanda kutip ganda ("").

Support

  • Hasil dari {{ quote(123) }} adalah "123"

  • Hasil dari {{ quote("foo") }} adalah "foo".

indent(value, n=4)

Memberi indentasi setiap baris string. Indentasi default adalah 4 spasi.

Gunakan parameter n untuk menentukan jumlah spasi untuk indentasi.

Supported

  • Hasil dari {{ "foobar\n" }}{{ indent("foo\nbar") }} adalah sebagai berikut:

    foobar
        foo
        bar
  • Hasil dari {{ "foobar\n" }}{{ indent("foo\nbar", 2) }} adalah sebagai berikut:

    foobar
      foo
      bar

startswith(value, prefix)

Memeriksa apakah string dimulai dengan awalan tertentu.

Support

Hasil dari {{ startswith("football", "foo") }} adalah true.

endswith(value, suffix)

Memeriksa apakah string diakhiri dengan akhiran tertentu.

Support

Hasil dari {{ endswith("football", "all") }} adalah true.

removeprefix(value, prefix)

Menghapus awalan dari string.

Support

Hasil dari {{ removeprefix("football", "foot") }} adalah ball.

removesuffix(value, suffix)

Menghapus akhiran dari string.

Supported

Hasil dari {{ removesuffix("football", "ball") }} adalah foot.

split(value, sep=None, maxsplit=-1)

Memisahkan string.

  • Gunakan parameter sep untuk menentukan pemisah.

  • Gunakan parameter maxsplit untuk membatasi jumlah pemisahan.

    Jika maxsplit tidak ditentukan atau diatur ke -1, tidak ada batasan jumlah pemisahan.

Support

  • Hasil dari {{ split('a b c ') }} adalah ['a', 'b', 'c'].

  • Hasil dari {{ split('a-b-c', sep='-') }} adalah ['a', 'b', 'c'].

  • Hasil dari {{ split('a-b-c', sep='-', maxsplit=1) }} adalah ['a', 'b-c'].

  • Hasil dari {{ split('a<>b<>c', sep='<>') }} adalah ['a', 'b', 'c'].

List and object functions

Function

Description

Filter

Example

enumerate(value)

Memasangkan setiap elemen dalam iterable dengan indeksnya, mengembalikan daftar tupel (indeks, elemen).

Not supported

Hasil dari {{ enumerate(["foo", "bar"]) }} adalah [(0, 'foo'), (1, 'bar')].

list(value)

Mengonversi objek iterable menjadi daftar.

Supported

  • Hasil dari {{ list(("foo", "bar")) }} adalah ['foo', 'bar'].

  • Hasil dari {{ list("foo") }} adalah ['f', 'o', 'o'].

dict(value)

Membuat dictionary, mirip dengan menggunakan {}.

Not supported

Hasil dari {{ dict(foo=1, bar="hello") }} adalah {'foo': 1, 'bar': 'hello'}.

first(value)

Mengembalikan item pertama dalam daftar.

Support

Hasil dari {{ first([1, 2, 3]) }} adalah 1.

last(value)

Mengembalikan item terakhir dalam daftar.

Supported

Hasil dari {{ last([1, 2, 3]) }} adalah 3.

sort(value, reverse=true)

Mengurutkan elemen-elemen dalam daftar.

Untuk mengurutkan secara terbalik, tentukan reverse=true.

Help and support

  • Hasil dari {{ sort([3, 1, 2]) }} adalah [1, 2, 3].

  • Hasil dari {{ sort([3, 1, 2], reverse=true) }} adalah [3, 2, 1].

dictsort(value)

Mengurutkan pasangan kunci-nilai objek berdasarkan kunci dan mengembalikan array pasangan yang telah diurutkan.

Support

  • Contoh bidang alert.labels

    {
        "host": "host-1",
        "app": "nginx"
    }
  • Konfigurasi templat konten

    {%- for key, val in dictsort(alert.labels) %}
    {{ key }}: {{ val }}
    {%- endfor %}
  • Hasil

    app: nginx
    host: host-1

join(value, d='')

Menggabungkan elemen-elemen daftar dengan pemisah.

Gunakan parameter d untuk menentukan pemisah.

Support

  • Hasil dari {{ join([1, 2, 3]) }} adalah 123.

  • Hasil dari {{ join([1, 2, 3], ',') }} adalah 1,2,3.

Formatting functions

Function

Description

Filter

Example

escape_markdown(value)

Meloloskan (escape) karakter khusus Markdown.

Support

Hasil dari {{ escape_markdown("__a__ **b** #c") }} adalah &#95;&#95;a&#95;&#95; &#42;&#42;b&#42;&#42; &#35;c.

escape_html(value)

Meng-escape karakter HTML khusus.

Support

Hasil dari {{ escape_html("<div>") }} adalah &lt;div&gt;.

to_json(value)

Mengonversi objek ke format JSON.

Support

  • Hasil dari {{ to_json("foo") }} adalah "foo".

  • Hasil dari {{ to_json(1.23) }} adalah 1.23.

  • Hasil dari {{ to_json(True) }} adalah true.

  • Hasil dari {{ to_json(alert.labels) }} adalah {"host": "host-1", "app": "nginx"}.

parse_json(value)

Mengurai string menjadi struktur data JSON.

Support

  • Hasil dari {{ parse_json('{"foo": "bar"}').foo }} adalah bar.

  • Hasil dari {{ parse_json('[1, 2, 3]')[1] }} adalah 2.

Encoding and decoding functions

Function

Description

Filter

Example

base64_encoding(value)

Mengenkripsi nilai input dalam Base64.

Didukung

Hasil dari {{ base64_encoding("foo") }} adalah Zm9v.

base64_decoding(value)

Mendekripsi nilai input yang telah dienkripsi dalam Base64.

Didukung

Hasil dari {{ base64_decoding("Zm9v") }} adalah foo.

md5_encoding(value)

Menghasilkan Hash MD5 dari nilai input.

Didukung

Hasil dari {{ md5_encoding("foo") }} adalah acbd18db4cc2f85cedef654fccc4a4d8.

url_encoding(value)

Menyandikan nilai input dalam format URL-encoding.

Didukung

Hasil dari {{ url_encoding("https://example.com?a=b&c=d") }} adalah https%3A%2F%2Fexample.com%3Fa%3Db%26c%3Dd.

url_decoding(value)

Mendekode nilai input yang telah disandikan dalam format URL.

Didukung

Hasil dari {{ url_decoding("https%3A%2F%2Fexample.com%3Fa%3Db%26c%3Dd") }} adalah https://example.com?a=b&c=d.

Date and time functions

Function

Description

Filter

Example

parse_date(value, fmt="%Y-%m-%d %H:%M:%S")

Mengonversi timestamp Unix atau string terformat menjadi objek datetime.

Gunakan parameter fmt untuk menentukan format datetime.

Support

  • Hasil dari {{ parse_date(1629820800) }} adalah 2021-08-25 00:00:00.

  • Hasil dari {{ parse_date("2021|08|25|00|00|00", fmt="%Y|%m|%d|%H|%M|%S") }} adalah 2021-08-25 00:00:00.

format_date(value, tz=None, fmt="%Y-%m-%d %H:%M:%S")

Memformat nilai datetime sebagai string.

Gunakan parameter fmt untuk menentukan format output.

Jika nilai input bukan objek tanggal, fungsi ini terlebih dahulu mengonversinya menjadi objek tanggal lalu memformatnya. Untuk informasi lebih lanjut tentang direktif format datetime, lihat Petunjuk pemformatan datetime. Untuk informasi lebih lanjut tentang zona waktu, lihat Zona waktu.

Not supported

  • Hasil dari {{ format_date(1629820800) }} adalah 2021-08-25 00:00:00.

  • Hasil dari {{ format_date(1629820800, fmt="%Y/%m/%d %H:%M:%S") }} adalah 2021/08/25 00:00:00.

  • Hasil dari {{ format_date(1629820800, tz="UTC", fmt="%Y/%m/%d %H:%M:%S") }} adalah 2021/08/24 16:00:00.

timestamp(value)

Mengonversi string tanggal dan waktu menjadi timestamp Unix.

Jika nilai input bukan objek tanggal, fungsi ini terlebih dahulu mengonversinya menjadi objek tanggal sebelum mengembalikan timestamp.

Supported

  • Hasil dari {{ timestamp("2021-08-25 00:00:00") }} adalah 1629820800.

  • Hasil dari {{ timestamp(parse_date("2021-08-25 00:00:00")) }} adalah 1629820800.

format_duration(value, locale='en-US', sep='')

Memformat interval waktu. Satuan value adalah detik.

Gunakan parameter locale untuk menentukan bahasa. Untuk nilai valid parameter locale, lihat Nilai valid parameter locale dalam fungsi peringatan.

Support

  • Hasil dari {{ 10 | format_duration }} adalah 10s.

  • Hasil dari {{ 60 | format_duration }} adalah 1m.

  • Hasil dari {{ 3600 | format_duration }} adalah 1h.

  • Hasil dari {{ 86400 | format_duration }} adalah 1d.

  • Hasil dari {{ 100000 | format_duration }} adalah 1d3h46m40s.

  • Hasil dari {{ 100000 | format_duration(sep=",") }} adalah 1d,3h,46m,40s.

Fungsi Peringatan

Fungsi Peringatan beroperasi dalam konteks peringatan dan menyesuaikan diri dengan konfigurasi templat konten. Fungsi ini secara otomatis mendeteksi hal-hal berikut:

Catatan

Menjalankan fungsi Peringatan dalam konteks peringatan yang berbeda dapat menghasilkan hasil yang berbeda.

  • Properti peringatan, seperti tingkat keparahan dan status peringatan saat ini.

  • Bahasa yang dikonfigurasi dalam templat konten, seperti Bahasa Tiongkok atau Bahasa Inggris.

  • Saluran notifikasi, seperti DingTalk atau email.

Function

Description

Filter

Example

format_type(alert.type, locale=None)

Mengonversi jenis peringatan menjadi deskripsi teks.

Gunakan parameter locale untuk menentukan bahasa. Untuk nilai valid parameter locale, lihat Nilai valid parameter locale dalam fungsi peringatan.

Support

  • Jenis peringatan adalah sls_pub.

  • Konfigurasi templat konten

    {{ format_type(alert.type) }}
  • Hasil

    • Jika bahasa dalam templat konten diatur ke Bahasa Tiongkok, konten notifikasi adalah Sistem Penerimaan Peringatan.

    • Jika bahasa dalam templat konten diatur ke Bahasa Inggris, konten notifikasi adalah Pub Alert.

format_region(alert.region, locale=None)

Mengonversi wilayah peringatan menjadi deskripsi teks.

Gunakan parameter locale untuk menentukan bahasa. Untuk nilai valid parameter locale, lihat Nilai valid parameter locale dalam fungsi peringatan.

Support

  • Wilayah peringatan saat ini adalah cn-hangzhou.

  • Konfigurasi templat konten

    {{ format_region(alert.region) }}
  • Hasil

    • Jika bahasa dalam templat konten diatur ke Bahasa Tiongkok, konten notifikasi adalah China (Hangzhou).

    • Jika bahasa dalam templat konten diatur ke Bahasa Inggris, konten notifikasi adalah China (Hangzhou).

format_severity(alert.severity, locale=None)

Mengonversi tingkat keparahan peringatan menjadi deskripsi teks dengan pemformatan berwarna.

Catatan

Teks berwarna hanya didukung dalam notifikasi DingTalk, WeCom, email, dan Pusat Pesan.

Gunakan parameter locale untuk menentukan bahasa. Untuk nilai valid parameter locale, lihat Nilai valid parameter locale dalam fungsi peringatan.

Support

  • Tingkat keparahan peringatan adalah 6.

  • Konfigurasi templat konten

    {{ format_severity(alert.severity) }}
  • Hasil

    • Jika bahasa dalam templat konten diatur ke Bahasa Tiongkok, konten notifikasi adalah Medium dengan font berwarna kuning.

    • Jika bahasa dalam templat konten diatur ke Bahasa Inggris, konten notifikasi adalah Medium dengan font berwarna kuning.

format_status(alert.status, locale=None)

Mengonversi status peringatan menjadi deskripsi teks dengan pemformatan berwarna.

Catatan

Teks berwarna hanya didukung dalam notifikasi DingTalk, WeCom, email, dan Pusat Pesan. Untuk saluran lain, output tetap tidak berubah.

Gunakan parameter locale untuk menentukan bahasa. Untuk nilai valid parameter locale, lihat Nilai valid parameter locale dalam fungsi peringatan.

Support

  • Peringatan saat ini berada dalam Firing state.

  • Konfigurasi templat konten

    {{ format_status(alert.status) }}
  • Hasil

    • Jika bahasa dalam templat konten diatur ke Bahasa Tiongkok, konten notifikasi adalah Firing dengan font berwarna merah.

    • Jika bahasa dalam templat konten diatur ke Bahasa Inggris, konten notifikasi adalah Firing dengan font berwarna merah.

to_list(value)

Mengonversi array atau objek menjadi daftar.

Support

  • Label peringatan

    {
        "app": "nginx",
        "host": "host-1"
    }
  • Konfigurasi templat konten

    {{ to_list(alert.labels) }}
  • Hasil

    • Jika konten notifikasi dalam format Markdown, hasilnya adalah sebagai berikut:

      Fungsi ini secara otomatis menghindari karakter Markdown sesuai kebutuhan saluran notifikasi.

      - app: nginx
      - host: host&#45;1
    • Jika konten notifikasi dalam format HTML, hasilnya adalah sebagai berikut:

      <ul>
        <li>app: nginx</li>
        <li>host: host-1</li>
      </ul>
    • Jika konten notifikasi dalam format teks biasa, hasilnya adalah sebagai berikut:

      [app: nginx][host: host-1]

annotations_to_list(alert.annotations, locale=None)

Mengonversi anotasi peringatan menjadi daftar. Fungsi ini bekerja seperti to_list(alert.annotations), tetapi secara otomatis memetakan nama bidang standar ke label yang mudah dibaca manusia. Misalnya, mengonversi bidang title menjadi Title atau Title. Untuk daftar nama standar, lihat Pemetaan bidang anotasi peringatan.

Gunakan parameter locale untuk menentukan bahasa. Untuk nilai valid parameter locale, lihat Nilai valid parameter locale dalam fungsi peringatan.

Support

  • Anotasi peringatan

    {
        "title": "Nginx access abnormal",
        "desc": "PV decreased by 80% year-over-year",
        "cnt": "120"
    }
  • Konfigurasi templat konten

    {{ annotations_to_list(alert.annotations) }}
  • Hasil

    Jika konten notifikasi dalam format Markdown, hasilnya adalah sebagai berikut:

    - Title: Nginx access abnormal
    - Description: PV decreased by 80% year-over-year
    - cnt: 120

blockquote(value)

Menambahkan pemformatan blockquote ke konten notifikasi.

  • Jika konten notifikasi dalam format Markdown, simbol > ditambahkan di awal setiap baris.

  • Jika konten notifikasi dalam format HTML, konten dibungkus dalam tag <blockquote>.

Supported

  • Konfigurasi templat konten

    {{ blockquote("foo\nbar") }}
  • Hasil

    • Jika konten notifikasi dalam format Markdown, hasilnya adalah sebagai berikut:

      > foo
      > bar
    • Jika konten notifikasi dalam format HTML, hasilnya adalah sebagai berikut:

      <blockquote>
      foo
      bar
      </blockquote>

Referensi

  • Nilai valid parameter locale dalam fungsi Peringatan

    locale value

    Description

    None atau string kosong

    Menggunakan bahasa yang dikonfigurasi dalam templat konten.

    en-US

    Bahasa Inggris.

    zh-CN

    Bahasa Tiongkok.

  • Pemetaan bidang anotasi peringatan

    Annotation

    Mapping value (Chinese)

    Mapping value (English)

    title

    Title

    Title

    desc

    Description

    Description

    anomaly_score

    Anomaly Score

    Anomaly Score

    job_id

    Task ID

    Task ID

    model_id

    Model ID

    Model ID

    severity

    Anomaly Severity

    Anomaly Severity

    __pub_alert_app__

    Application

    Application

    __pub_alert_protocol__

    Protocol

    Protocol

    __pub_alert_region__

    Region

    Region

    __pub_alert_service__

    Service

    Service

    __ensure_url__

    Anomaly Confirmation

    Anomaly Confirmation

    __mismatch_url__

    False Positive Confirmation

    False Positive Confirmation

    __plot_image__

    Time Series Chart

    Time Series Chart

    __host_ip__

    Machine Address

    Machine Address

    __host_group_name__

    Machine Group Name

    Machine Group Name

    __cloud_monitor_type__

    CloudMonitor

    CloudMonitor