Mengaktifkan log debug NGINX di Router

Anda melihat dokumentasi Apigee Edge.
Buka dokumentasi Apigee X.
info

Di Apigee, Router dikonfigurasi untuk mencatat hanya pesan error dalam file log error secara default. Namun, mungkin ada banyak situasi ketika Anda perlu mengumpulkan informasi lebih lanjut untuk menentukan penyebab error tertentu terjadi. Salah satu cara untuk melakukannya adalah dengan mengonfigurasi Router untuk beroperasi dalam mode debug sehingga Anda bisa mendapatkan log debug, yang dapat membantu Anda mendapatkan informasi lebih lanjut tentang error dan menyelesaikannya lebih cepat.

Dokumen ini menjelaskan cara mengaktifkan log debug di Router Apigee Edge untuk permintaan pada host virtual tertentu. Logging debug dapat diaktifkan untuk menangkap informasi lebih lanjut jika ada masalah seperti permintaan yang salah format, 400 Bad Request - SSL Certificate Error, di Northbound (antara aplikasi Klien dan Router).

Sebelum memulai

  • Jika Anda belum memahami log error NGINX dan tingkat logging, lihat dokumentasi log error NGINX.
  • Kumpulkan nama organisasi, nama lingkungan, dan nama host virtual dari permintaan API yang informasinya perlu Anda kumpulkan untuk debug.

Mengaktifkan log debug NGINX di Router

Bagian ini menjelaskan cara mengaktifkan log debug di Router Edge.

Mengidentifikasi file konfigurasi host virtual yang relevan

Langkah-langkah berikut menjelaskan cara menemukan file konfigurasi host virtual yang relevan di Router:

  1. Jika Anda mengetahui nama organisasi, nama lingkungan, dan host virtual untuk permintaan API tertentu yang ingin Anda debug, tentukan file conf host virtual sebagai berikut:
    1. Buka direktori /opt/nginx/conf.d/.
    2. Cari file ORG_NAME_ENV_NAME_VIRTUALHOST.conf file di direktori conf.d menggunakan perintah berikut:
      ls -ltrh | grep "ORG_NAME_ENV_NAME_VIRTUALHOST_NAME"
  2. Jika Anda tidak mengetahui nama organisasi, Anda dapat mengidentifikasi file konfigurasi host virtual menggunakan nama alias host yang digunakan dalam permintaan API sebagai berikut:

    Buka direktori /opt/nginx/conf.d/ dan cari hostalias yang digunakan untuk membuat permintaan menggunakan perintah berikut:

    ls -ltrh | grep -r 'HOST_ALIAS_NAME'

    Contoh output:

    Misalnya, nama alias host adalah opdk.cert-test.com. Saat Anda menjalankan perintah ls -ltrh, Anda akan melihat output seperti yang ditunjukkan di bawah:

Mengaktifkan logging debug untuk host virtual tertentu di Router

Langkah-langkah berikut menjelaskan cara mengaktifkan log debug di Router Apigee untuk host virtual tertentu.

  1. Buka file berikut di mesin Router di editor: /opt/nginx/conf.d/ORG_NAME_ENV_NAME_VIRTUALHOST_NAME.conf. Contoh:
    vi /opt/nginx/conf.d/ORG_NAME_ENV_NAME_VIRTUALHOST_NAME.conf
  2. Ubah baris berikut:
    error_log /opt/apigee/var/log/edge-router/nginx/ORG_NAME~ENV_NAME.PORT_error_log error;

    hingga

    error_log /opt/apigee/var/log/edge-router/nginx/ORG_NAME~ENV_NAME.PORT_error_log info;
  3. Simpan perubahan.
  4. Jalankan perintah muat ulang NGINX. Contoh:
    sudo /opt/nginx/scripts/apigee-nginx reload
  5. File berikut kini akan menangkap log debug:
    /opt/apigee/var/log/edge-router/nginx/ORG_NAME~ENV_NAME.PORT_error_log
  6. Jika Anda ingin menangkap log debug di lebih dari satu Router, ulangi langkah-langbekah ini di setiap of the Routers.

Memverifikasi bahwa informasi debug dicatat dalam file log error NGINX

  1. Setelah klien membuat Permintaan API di alias host dan port yang terkait dengan konfigurasi host virtual, log debug akan dicatat dalam file berikut:

    /opt/apigee/var/log/edge-router/nginx/ORG_NAME~ENV_NAME.PORT_error_log

  2. Pastikan Anda melihat informasi debug untuk permintaan API seperti yang ditunjukkan dalam contoh berikut:

    Contoh informasi debug:

    2021/01/27 02:48:40 [warn] 27624#27624: *3777 a client request body is buffered to a temporary file /opt/apigee/var/log/edge-router/nginx/client_temp/0000000001, client: XX.XX.XX.XX, server: XX.XX.XX.XX, request: "POST /post-no-target HTTP/1.1", host: "XX.XX.XX.XX:443"

    Informasi yang ditampilkan di atas akan dicatat saat klien mengirim permintaan POST dengan payload besar. Log ini hanya akan ditampilkan jika logging debug diaktifkan.

  3. Jika Anda tidak melihat informasi debug tambahan, pastikan Anda telah mengikuti semua langkah yang diuraikan di Mengaktifkan logging debug untuk host virtual tertentu di Router dengan benar. Jika Anda melewatkan langkah apa pun, ulangi semua langkah dengan benar.
  4. Jika Anda masih tidak dapat memperoleh informasi debug, hubungi Dukungan Apigee Edge.

Menonaktifkan log debug untuk host virtual tertentu di Router

Bagian ini menjelaskan cara menonaktifkan log debug di Router untuk host virtual tertentu.

  1. Buka file berikut di mesin Router di editor: /opt/nginx/conf.d/ORG_NAME_ENV_NAME_VIRTUALHOST_NAME.conf Contoh:
    vi /opt/nginx/conf.d/ORG_NAME_ENV_NAME_VIRTUALHOST_NAME.conf
  2. Ubah baris berikut:

    error_log /opt/apigee/var/log/edge-router/nginx/ORG_NAME~ENV_NAME.PORT_error_log info;

    hingga

    error_log /opt/apigee/var/log/edge-router/nginx/ORG_NAME~ENV_NAME.PORT_error_log error;
  3. Simpan perubahan.
  4. Jalankan perintah muat ulang NGINX. Contoh:
    /opt/nginx/scripts/apigee-nginx reload
  5. File berikut kini hanya akan menangkap log error:
    /opt/apigee/var/log/edge-router/nginx/ORG_NAME~ENV_NAME.PORT_error_log
  6. Jika Anda ingin menghentikan log debug di lebih dari satu Router, ulangi langkah-langkah ini di setiap Router.

Memverifikasi bahwa hanya informasi error yang dicatat dalam file log error NGINX

  1. Buat beberapa permintaan API di alias host dan port yang terkait dengan konfigurasi host virtual atau tunggu hingga klien membuat permintaan.
  2. Periksa file berikut: /opt/apigee/var/log/edge-router/nginx/ORG_NAME~ENV_NAME.PORT_error_log
  3. Pastikan Anda hanya melihat informasi error dan informasi debug tidak lagi dicatat untuk permintaan.
  4. Jika Anda masih melihat informasi debug tambahan yang dicatat, pastikan Anda telah mengikuti semua langkah yang diuraikan di Menonaktifkan log debug untuk host virtual tertentu di Router dengan benar. Jika Anda melewatkan langkah apa pun, ulangi semua langkah dengan benar.
  5. Jika Anda masih tidak dapat memperoleh informasi debug, hubungi Dukungan Apigee Edge.