OOZOU
Hubungi Kami
Kembali ke TIL
ruby on rails

Menandai Log Rails dengan Informasi yang Berguna

13 Oktober 2020

Baru saja belajar tentang tagged logging di rails. Tahukah Anda bahwa Anda dapat menandai log dengan menggunakan

logger.tagged('Your Tag') { logger.info('Message') }

config/application.rb

Anda juga dapat melakukannya secara global dengan

# config/application.rb
config.log_tags = [:method_on_request_object, lambda { |request| request.method.modifier_method }]

config/application.rb

Tambahkan informasi OS perangkat klien dan versi OS ke log (klien harus mengirim header X-OS dan X-OS-Version)

# config/application.rb
config.log_tags = [ :request_id, lambda { |request| "#{request.headers['HTTP_X_OS']} #{request.headers['HTTP_X_OS_VERSION']}" } ]

Untuk environment production, pengaturan khusus dapat ditambahkan di file config environments production.rb untuk mengoptimalkan logging dan performa.

1. Pengenalan Log Tag

Log tag adalah fitur yang andal di Rails yang memungkinkan Anda menambahkan informasi kustom ke log, sehingga lebih mudah melakukan debug dan memahami perilaku aplikasi Anda. Dengan log tag, Anda dapat mengelompokkan pesan log yang saling terkait dan membuat log lebih mudah dibaca dan lebih berguna. Di bagian ini, kami akan memperkenalkan konsep log tag dan menjelaskan cara menggunakannya di aplikasi Rails Anda.

2. Mengonfigurasi Komponen Rails

Mengonfigurasi komponen Rails adalah bagian penting dalam menyiapkan aplikasi Anda. Di bagian ini, kami akan membahas cara mengonfigurasi berbagai komponen Rails, termasuk application, environment, dan middleware. Kami juga akan membahas cara menggunakan method config untuk menyiapkan konfigurasi kustom bagi aplikasi Anda.

3. Menyesuaikan Log Tag

Menyesuaikan log tag memungkinkan Anda menambahkan informasi spesifik yang relevan dengan aplikasi Anda ke dalam log. Di bagian ini, kami akan membahas cara menyesuaikan log tag menggunakan method log_tags. Kami juga akan membahas cara menggunakan Proc dan objek yang merespons to_s untuk menambahkan informasi dinamis ke log Anda.

4. Contoh Log Tagging

Log tagging adalah fitur serbaguna yang dapat digunakan dengan berbagai cara untuk meningkatkan kualitas log Anda. Di bagian ini, kami akan memberikan contoh penggunaan log tag dalam berbagai skenario, seperti mencatat request ke API eksternal, background job, dan informasi pengguna. Kami juga akan membahas cara menggunakan log tag untuk melakukan debug pada aplikasi multi-tenant.

5. Praktik Terbaik untuk Log Tag

Menggunakan log tag secara efektif memerlukan beberapa praktik terbaik agar log Anda tetap mudah dibaca dan berguna. Di bagian ini, kami akan membahas praktik terbaik penggunaan log tag, termasuk cara menjaga log tetap ringkas, cara menggunakan nama tag yang bermakna, dan cara menghindari pemberian tag yang berlebihan. Kami juga akan membahas cara menggunakan log tag bersama alat dan teknik logging lainnya agar Anda mendapatkan manfaat maksimal dari log Anda.

Lainnya tentang ruby on rails

ruby on rails10 Februari 2022

Menggunakan Pundit Policy untuk Mengelola Permitted Parameter, Default dan Per Action

Untuk mengelola permitted params, Anda dapat menambahkan permitted\attributes dan permitted\attributes\for\#{action} di policy Anda, misalnya:

ruby on rails31 Januari 2022

Menggunakan `requestSubmit` untuk Submit Form dengan Turbo

Turbo mendengarkan event submit pada form. Oleh karena itu, selalu gunakan requestSubmit untuk men-submit form menggunakan JS.

ruby on rails19 Januari 2022

Mengabaikan Bundled Gems untuk Rubocop dan ESLint di GitHub Actions

Proyek Rails sering menginstal gem ke direktori vendor di GitHub Actions agar gem tersebut dapat di-cache untuk eksekusi berikutnya.

Punya proyek yang ingin diwujudkan?

Kami ingin mendengar apa yang sedang Anda bangun.

Mulai Percakapanhello@oozou.com
OOZOU Logo

Bangkok · Singapura · Hong Kong

X
Facebook
Instagram
LinkedIn
OOZOU Co., Ltd.
548 One City Centre
Ploenchit Road
Bangkok 10330
Thailand
+66 2544 0000
hello@oozou.com

Layanan

  • Pengembangan Web
  • Agen AI & Generative AI
  • Pengembangan Aplikasi Mobile
  • Analitik Data & Data Engineering
  • Desain UI/UX & Produk
  • Transformasi Digital

Perusahaan

  • Tentang Kami
  • Karier
  • Blog
  • Studi Kasus
  • Demo Langsung
  • Today I Learned
  • Hubungi Kami

Lainnya

  • Industri
  • Jaringan Mitra
© 2026 OOZOU. Hak cipta dilindungi undang-undang.
Kebijakan PrivasiKode EtikKebijakan ABAC