全部产品
Search
文档中心

Function Compute:Ekstensi pemantauan aplikasi ARMS untuk runtime kustom

更新时间:Dec 10, 2025

Runtime Java 8 bawaan di Function Compute mendukung Application Real-Time Monitoring Service (ARMS). Anda juga dapat menggunakan ARMS dengan runtime kustom untuk Java 8, Java 11, dan Java 17. Topik ini menjelaskan cara menghubungkan runtime kustom ke ARMS.

Informasi latar belakang

Dengan mengintegrasikan Function Compute ke platform ARMS, Anda dapat memantau dan melacak fungsi Anda menggunakan ARMS. Integrasi ini menyediakan observabilitas tingkat instans, informasi tracing, metrik Java Virtual Machine (JVM), profiling tingkat kode, serta informasi keamanan aplikasi. Untuk informasi selengkapnya, lihat Apa itu Application Real-Time Monitoring Service (ARMS)?.

Fitur

Deskripsi

Observabilitas tingkat instans

Mengumpulkan berbagai metrik pemantauan host yang kaya pada tingkat instans fungsi, seperti CPU, memori, dan permintaan.

Tracing Analysis

Agen ARMS secara otomatis menemukan topologi dan metrik terkait dari fungsi beserta komponen hulu dan hilirnya. Anda dapat melihat informasi tentang komponen, seperti database, Redis, dan antrian pesan (MQs), di platform ARMS.

Metrik Java virtual machine

Agen ARMS secara otomatis menemukan aplikasi JVM. Anda dapat melihat data pemantauan untuk aplikasi JVM di platform ARMS, seperti jumlah garbage collection (GC), informasi heap, dan informasi stack thread.

Profiling tingkat kode

Lihat informasi profiling tingkat kode dari eksekusi fungsi, seperti waktu yang dikonsumsi oleh setiap metode dan pengecualian apa pun.

Keamanan aplikasi

Berdasarkan teknologi Runtime Application Self-Protection (RASP), keamanan aplikasi menyediakan perlindungan kuat saat runtime untuk aplikasi Anda. Fitur ini melindungi dari serangan yang mengeksploitasi sebagian besar kerentanan yang tidak diketahui.

Menghubungkan runtime kustom ke ARMS

Pemantauan aplikasi ARMS merupakan ekstensi internal. Menghubungkan runtime kustom ke ARMS melibatkan tiga langkah utama.

Gunakan lapisan publik untuk mendapatkan program ARMS Agent

Platform Function Compute menyediakan ARMS Agent untuk Java 8, Java 11, dan Java 17 sebagai lapisan publik.

Versi Java

Runtime yang kompatibel

ARN Lapisan Publik

Java 11/Java 8

custom runtime

acs:fc:{region}:official:layers/ArmsAgent273x/versions/1

Java 17

custom runtime

acs:fc:{region}:official:layers/ArmsAgent273x_JDK17/versions/1

Gunakan skrip bootstrap sebagai perintah startup

Untuk menggunakan ARMS, Anda harus menambahkan tiga parameter startup. Karena perintah startup kompleks, kami menyarankan menggunakan skrip. Di halaman kode fungsi, Anda dapat menggunakan WebIDE untuk membuat file bernama bootstrap. Kemudian, atur izin eksekusi untuk file tersebut dengan menjalankan perintah chmod +x bootstrap di terminal. Kode berikut memberikan contoh.

#!/bin/bash
set -eo pipefail

# 1. Tetapkan nama aplikasi ARMS.
appName="FC:Custom_Java_Arms_Demo"
if [ -n "${FC_FUNCTION_NAME}" ]; then
    appName="FC:${FC_FUNCTION_NAME}"
fi

echo "appName: ${appName}"
params=" "

# 2. Tambahkan parameter ARMS.
if [[ -n "${FC_EXTENSIONS_ARMS_LICENSE_KEY}" ]]; then
    echo "FC_EXTENSIONS_ARMS_LICENSE_KEY: ${FC_EXTENSIONS_ARMS_LICENSE_KEY}"
    params+="-Dfc.instanceId=$HOSTNAME@`hostname -i` "
    # Gunakan path program ARMS dari lapisan publik.
    params+="-javaagent:/opt/ArmsAgent/arms-bootstrap-1.7.0-SNAPSHOT.jar "
    params+="-Darms.licenseKey=${FC_EXTENSIONS_ARMS_LICENSE_KEY} "
    params+="-Darms.appName=${appName} "
else
    echo "Variabel lingkungan FC_EXTENSIONS_ARMS_LICENSE_KEY tidak ada, harap atur variabel lingkungan FC_EXTENSIONS_ARMS_LICENSE_KEY!"
    exit 1
fi

# 3. Jalankan aplikasi.
echo "params: ${params}"
exec java $params \
    -Dserver.port=9000 \
    -jar /code/target/demo-0.0.1-SNAPSHOT.jar

Daftar berikut menjelaskan kode contoh tersebut.

  1. Tetapkan nama aplikasi ARMS. Nama default adalah FC:{FunctionName}.

  2. Tambahkan parameter ARMS.

    • javaagent: Path ke program ARMS. Jika Anda menggunakan lapisan publik untuk ARMS Agent, path-nya adalah /opt/ArmsAgent/arms-bootstrap-1.7.0-SNAPSHOT.jar.

    • Darms.licenseKey: Kunci lisensi. Contoh ini menunjukkan cara mendapatkan kunci lisensi dari variabel lingkungan. Untuk informasi selengkapnya tentang cara mendapatkan kunci lisensi, lihat Dapatkan kunci lisensi.

    • Darms.appName: Nama aplikasi ARMS. Anda dapat menentukan nama sesuai kebutuhan.

Atur variabel lingkungan

  • Atur variabel lingkungan FC_EXTENSIONS_ARMS_LICENSE_KEY=xxxx dengan nilai kunci lisensi Anda. Untuk informasi selengkapnya tentang cara mendapatkan kunci lisensi, lihat Dapatkan kunci lisensi.

  • Atur variabel lingkungan FC_EXTENSION_ARMS=true.

    Setelah menambahkan variabel lingkungan ini, instans fungsi tidak langsung dibekukan setelah pemanggilan fungsi berakhir. Sebaliknya, sistem menunggu selama 10 detik sebelum membekukan instans. Penundaan ini memastikan ekstensi ARMS Agent dapat berhasil melaporkan log.

    Penting

    Periode tunggu antara akhir pemanggilan dan pembekuan instans dikenai biaya. Kebijakan penagihan sama dengan fase pemanggilan instans. Untuk informasi selengkapnya, lihat Penagihan.

Prasyarat

  • Anda telah membuat fungsi yang menggunakan runtime kustom untuk Java 8, Java 11, atau Java 17. Untuk informasi selengkapnya, lihat Buat fungsi.

  • Anda telah mengaktifkan ARMS. Untuk informasi selengkapnya, lihat Aktifkan ARMS.

Prosedur

  1. Login ke Function Compute console. Di panel navigasi sebelah kiri, pilih Function Management > Functions.

  2. Di bilah navigasi atas, pilih wilayah. Di halaman Functions, klik nama fungsi target.

  3. Di halaman detail fungsi, klik tab Configuration.

  4. Di bagian Advanced Configuration, klik Edit. Di panel Advanced Configuration, temukan bagian Layers, klik + Add Layer > Add Official Public Layer. Tambahkan lapisan ArmsAgent yang kompatibel dengan versi Java Anda.

  5. Di panel Advanced Configuration, temukan dan edit bagian Environment Variables. Tambahkan variabel lingkungan FC_EXTENSION_ARMS=true dan FC_EXTENSIONS_ARMS_LICENSE_KEY=xxxx.

    Untuk informasi selengkapnya, lihat Atur variabel lingkungan.

  6. Di halaman kode fungsi, gunakan WebIDE untuk membuat file bootstrap, lalu klik Deploy Code.

    Untuk informasi selengkapnya, lihat Gunakan skrip bootstrap sebagai perintah startup.

    Setelah memperbarui konfigurasi dan menerapkan kode, fungsi Anda terhubung ke ARMS untuk pemantauan aplikasi dan manajemen berkinerja tinggi. Penagihan untuk pemantauan ARMS kemudian dimulai. Untuk informasi selengkapnya, lihat Ikhtisar penagihan.

Penting
  • Setelah fungsi Anda terhubung ke platform ARMS, pastikan platform ARMS dan fungsi berada di wilayah yang sama agar informasi pemantauan dapat ditampilkan.

  • Untuk memastikan fungsi berjalan dengan benar, pastikan memori yang ditentukan dalam konfigurasi fungsi Anda lebih dari 512 MB karena ARMS menggunakan sekitar 300 MB memori.

Verifikasi hasil

Setelah menghubungkan fungsi ke ARMS, Anda dapat melihat fungsi tersebut di Konsol ARMS.

Anda juga dapat login ke ARMS console. Di panel navigasi sebelah kiri, pilih Application Monitoring > Applications. Kemudian, klik nama aplikasi Anda untuk melihat informasi pemantauan detail. Untuk informasi selengkapnya, lihat Ikhtisar Aplikasi.

Catatan

Nama aplikasi adalah nilai appName dalam skrip bootstrap. Nilai default-nya adalah FC:{FunctionName}.