🚀 Coba Zilliz Cloud, Milvus yang sepenuhnya terkelola, secara gratis—rasakan performa 10x lebih cepat! Coba Sekarang>>

milvus-logo
LFAI
Beranda
  • Panduan Administrasi
    • Pemantauan, Peringatan & Log
  • Home
  • Docs
  • Panduan Administrasi

  • Pemantauan, Peringatan & Log

  • Log

  • Mengkonfigurasi Log Akses

Mengonfigurasi Log Akses

Fitur log akses di Milvus memungkinkan manajer server untuk mencatat dan menganalisis perilaku akses pengguna, membantu dalam memahami aspek-aspek seperti tingkat keberhasilan kueri dan alasan kegagalan.

Panduan ini memberikan instruksi terperinci tentang cara mengonfigurasi log akses di Milvus.

Konfigurasi log akses tergantung pada metode instalasi Milvus:

Opsi konfigurasi

Pilih di antara tiga opsi konfigurasi berdasarkan kebutuhan Anda:

  • Konfigurasi dasar: Untuk keperluan umum.
  • Config untuk file log akses lokal: Untuk menyimpan log secara lokal.
  • Config untuk mengunggah log akses lokal ke MinIO: Untuk penyimpanan dan pencadangan cloud.

Konfigurasi dasar

Konfigurasi dasar melibatkan pengaktifan log akses dan menentukan nama file log atau menggunakan stdout.

proxy:
  accessLog:
    enable: true
    # If `filename` is emtpy, logs will be printed to stdout.
    filename: ""
    # Additional formatter configurations...
  • proxy.accessLog.enable: Apakah akan mengaktifkan fitur log akses. Defaultnya adalah false (salah).
  • proxy.accessLog.filename: Nama file log akses. Jika Anda membiarkan parameter ini kosong, log akses akan dicetak ke stdout.

Konfigurasi untuk file log akses lokal

Mengkonfigurasi penyimpanan lokal untuk file log akses dengan parameter yang mencakup jalur file lokal, ukuran file, dan interval rotasi:

proxy:
  accessLog:
    enable: true
    filename: "access_log.txt" # Name of the access log file
    localPath: "/var/logs/milvus" # Local file path where the access log file is stored
    maxSize: 500 # Max size for each single access log file. Unit: MB
    rotatedTime: 24 # Time interval for log rotation. Unit: seconds
    maxBackups: 7 # Max number of sealed access log files that can be retained
    # Additional formatter configurations...

Parameter ini ditentukan bila filename tidak kosong.

  • proxy.accessLog.localPath: Jalur file lokal tempat file log akses disimpan.
  • proxy.accessLog.maxSize: Ukuran maksimum dalam MB yang diperbolehkan untuk satu file log akses. Jika ukuran file log mencapai batas ini, proses rotasi akan dipicu. Proses ini akan menyegel file log akses saat ini, membuat file log baru, dan menghapus isi file log asli.
  • proxy.accessLog.rotatedTime: Interval waktu maksimum dalam detik yang diizinkan untuk memutar file log akses tunggal. Setelah mencapai interval waktu yang ditentukan, proses rotasi akan dipicu, menghasilkan pembuatan file log akses baru dan menyegel file log sebelumnya.
  • proxy.accessLog.maxBackups: Jumlah maksimum file log akses tersegel yang dapat disimpan. Jika jumlah file log akses tersegel melebihi batas ini, file log akses yang paling lama akan dihapus.

Config untuk mengunggah file log akses lokal ke MinIO

Aktifkan dan konfigurasikan pengaturan untuk mengunggah file log akses lokal ke MinIO:

proxy:
  accessLog:
    enable: true
    filename: "access_log.txt"
    localPath: "/var/logs/milvus"
    maxSize: 500
    rotatedTime: 24 
    maxBackups: 7
    minioEnable: true
    remotePath: "/milvus/logs/access_logs"
    remoteMaxTime: 0
    # Additional formatter configurations...

Saat mengonfigurasi parameter MinIO, pastikan Anda telah menetapkan maxSize atau rotatedTime. Jika tidak, hal ini dapat menyebabkan kegagalan pengunggahan file log akses lokal ke MinIO.

  • proxy.accessLog.minioEnable: Apakah akan mengunggah file log akses lokal ke MinIO. Defaultnya adalah false.
  • proxy.accessLog.remotePath: Jalur penyimpanan objek untuk mengunggah file log akses.
  • proxy.accessLog.remoteMaxTime: Interval waktu yang diizinkan untuk mengunggah file log akses. Jika waktu pengunggahan file log melebihi interval ini, file akan dihapus. Mengatur nilai ke 0 akan menonaktifkan fitur ini.

Konfigurasi pemformat

Format log default yang digunakan untuk semua metode adalah format base, yang tidak memerlukan asosiasi metode tertentu. Namun, jika Anda ingin menyesuaikan output log untuk metode tertentu, Anda dapat menentukan format log khusus dan menerapkannya pada metode yang terkait.

proxy:
  accessLog:
    enable: true
    filename: "access_log.txt"
    localPath: "/var/logs/milvus"
    # Define custom formatters for access logs with format and applicable methods
    formatters:
      # The `base` formatter applies to all methods by default
      # The `base` formatter does not require specific method association
      base: 
        # Format string; an empty string means no log output
        format: "[$time_now] [ACCESS] <$user_name: $user_addr> $method_name-$method_status-$error_code [traceID: $trace_id] [timeCost: $time_cost]"
      # Custom formatter for specific methods (e.g., Query, Search)
      query: 
        format: "[$time_now] [ACCESS] <$user_name: $user_addr> $method_status-$method_name [traceID: $trace_id] [timeCost: $time_cost] [database: $database_name] [collection: $collection_name] [partitions: $partition_name] [expr: $method_expr]"
        # Specify the methods to which this custom formatter applies
        methods: ["Query", "Search"]
  • proxy.accessLog.<formatter_name>.format: Menentukan format log dengan metrik dinamis. Untuk informasi lebih lanjut, lihat Metrik yang didukung.
  • proxy.accessLog.<formatter_name>.methods: Mencantumkan operasi Milvus yang menggunakan pemformat ini. Untuk mendapatkan nama metode, lihat MilvusService di metode Milvus.

Referensi: Metrik yang didukung

Nama MetrikDeskripsi
$method_nameNama metode
$method_statusStatus akses: OK atau Gagal
$method_exprEkspresi yang digunakan untuk operasi kueri, pencarian, atau penghapusan
$trace_idTraceID yang terkait dengan akses
$user_addrAlamat IP pengguna
$user_nameNama pengguna
$response_sizeUkuran data respons
$error_codeKode kesalahan khusus untuk Milvus
$error_msgPesan kesalahan terperinci
$database_nameNama pangkalan data Milvus target
$collection_nameNama koleksi Milvus target
$partition_nameNama atau nama-nama partisi Milvus target
$time_costWaktu yang dibutuhkan untuk menyelesaikan akses
$time_nowWaktu saat log akses dicetak (biasanya setara dengan $time_end)
$time_startWaktu saat akses dimulai
$time_endWaktu di mana akses berakhir
$sdk_versionVersi SDK Milvus yang digunakan oleh pengguna

Coba Milvus yang Dikelola secara Gratis

Zilliz Cloud bebas masalah, didukung oleh Milvus dan 10x lebih cepat.

Mulai
Umpan balik

Apakah halaman ini bermanfaat?