Strim log telemetri masa nyata
Strim log akses proksi daripada pelayan XProxy anda ke Graylog atau SigNoz dalam masa nyata — pantau berbilang peranti dari satu tempat, bina papan pemuka, dan dapatkan amaran terhadap ralat.
Mengapa gunakan penstriman log terpusat?
- Pemantauan bersepadu — pantau akses dan kesihatan merentas semua nod XProxy dalam masa nyata.
- Pertanyaan mudah — tapis mengikut peranti, rantau, tindakan atau kod ralat.
- Penyelesaian masalah lebih pantas — asingkan ralat, lonjakan trafik atau kelakuan tidak normal dengan cepat.
Pelabelan yang disyorkan
- Pengecam Hos — nama bagi setiap pelayan, cth.
sg-core-01,us-east-02. - Nama Perkhidmatan — kumpulkan mengikut rantau atau unit perniagaan, cth.
xproxy-region-a.
Setiap log membawa label ini, memudahkan pembinaan papan pemuka dan penapis merentas peranti.
Kes penggunaan biasa
- Pengiraan IP pelanggan unik — anggarkan trafik sebenar dan kenal pasti sumber yang tidak dikenali.
- Penjejakan kadar ralat — tapis
error_code != 00000untuk mengukur kebolehpercayaan. - Destinasi utama & lebar jalur — kumpulkan mengikut
destination_host, jumlahkanreceived_bytesdansent_bytes. - Pemantauan setiap peranti/port — gunakan
modem_position,proxy_port,proxy_serviceuntuk mengasingkan dongle tertentu. - Pengesanan anomali — dapatkan amaran apabila berlaku lonjakan trafik secara tiba-tiba atau kod ralat yang tinggi.
Petua operasi untuk banyak peranti
- Penamaan konsisten — seragamkan Pengecam Hos dan Nama Perkhidmatan mengikut rantau atau kumpulan.
- Pengasingan persekitaran — gunakan awalan seperti
prod-/stg-dalam Nama Perkhidmatan. - Perancangan pengekalan — tetapkan putaran indeks dalam Graylog; pantau penggunaan/pengekalan dalam SigNoz Cloud.
- Amaran kesihatan — dapatkan amaran apabila nod berhenti menghantar log selama N minit; jalankan semula Uji Sambungan selepas menambah nod baharu.
Pilihan A — Graylog
Pasang Graylog
Keperluan: Ubuntu Server 20.04 atau 22.04, minimum 2 GB RAM (4 GB disyorkan).
curl x-proxy.io/graylog | bash
Cipta input GELF UDP
- Buka Graylog → Sistem → Input.
- Pilih GELF UDP dan klik Lancarkan input baharu.
- Tetapkan Alamat Bind kepada
0.0.0.0dan Port kepada12201. - Klik Simpan.

Konfigurasi XProxy untuk Graylog
- Buka Tetapan Umum → Log Telemetri.
- Hidupkan togol Dayakan Telemetri.
- Tetapkan Penyedia kepada Graylog.
- Masukkan Pelayan Graylog sebagai
YOUR_GRAYLOG_IP:12201. - Tetapkan Pengecam Hos dan Nama Perkhidmatan (pilihan tetapi disyorkan).
- Klik Simpan, kemudian Uji Sambungan.

Contoh pertanyaan dalam Graylog
# By service/cluster
service_name:xproxy-region-a
# Only errors
error_code:!00000
# By action
action:CONNECT
# By device/slot
modem_position:3
Pilihan B — SigNoz
Pasang SigNoz (Komuniti)
Keperluan: Ubuntu Server 20.04, 22.04, atau 24.04. Langkau jika menggunakan SigNoz Cloud.
curl x-proxy.io/signoz | bash
Konfigurasi XProxy untuk SigNoz
- Buka Tetapan Umum → Log Telemetri.
- Hidupkan togol Dayakan Telemetri dan pilih SigNoz sebagai Penyedia.
- Masukkan Titik Akhir OTLP/HTTP, cth.
https://ingest.us.signoz.cloud:4318. - Tampal Kunci Pengingesan anda (SigNoz Cloud) atau biarkan kosong untuk pemasangan setempat.
- Tetapkan Nama Perkhidmatan (cth.
xproxy-region-a). - Klik Simpan, kemudian Uji Sambungan.

Contoh pertanyaan dalam SigNoz
# By service name
service.name = "xproxy-region-a"
# Only errors
attributes.error_code != "00000"
# By action
attributes.action = "CONNECT"
# By device/slot
attributes.modem_position = 3
Rujukan medan log
| Medan | Penerangan |
|---|---|
log_date | Tarikh log (DD/MM) |
log_time | Masa log (HH:MM:SS) |
proxy_service | Nama kumpulan perkhidmatan (cth. MAIN) |
modem_position | Indeks peranti/slot yang melayan permintaan |
proxy_protocol | HTTP atau SOCKS5 |
proxy_port | Port pendengaran proksi pada XProxy |
proxy_user | Nama pengguna yang digunakan untuk pengesahan (kosong untuk senarai putih IP) |
client_ip | IP klien yang menggunakan proksi |
destination_host | Hos sasaran yang diminta melalui proksi |
destination_port | Port sasaran |
action | CONNECT (terowong) atau ACCESS (permintaan HTTP) |
error_code | 00000 = berjaya; bukan sifar = ralat |
received_bytes | Bait dari destinasi ke klien |
sent_bytes | Bait dari klien ke destinasi |
Rujukan kod ralat
XProxy mengeluarkan error_code lima digit dalam log (cth. 00000, 00004). Sifar di hadapan adalah disengajakan untuk pengisihan dan penapisan yang konsisten.
00000— Berjaya (sambungan ditutup secara normal)00001–00009— Ralat pengesahan (ACL/nama pengguna/kata laluan)00010— Had trafik melebihi00011–00019— Ralat sambungan (soket/bind/connect)00020–00029— Ralat dalaman (cth. peruntukan memori)00030–00039— Ralat pengalihan proksi HTTP CONNECT00050–00069— Ralat pengalihan proksi SOCKS500090–00099— Tamat masa sambungan / isu rangkaian00100— Hos tidak dijumpai00200–00299— Ralat portmapper UDP00300–00399— Ralat portmapper TCP00400–00499— Ralat proksi SOCKS00500–00599— Ralat proksi HTTP
Penyelesaian masalah
- Tiada data — pastikan telemetri didayakan dan anda telah mengklik Simpan. Jana trafik melalui mana-mana port proksi.
- Graylog — sahkan input GELF UDP sedang berjalan pada port 12201 dan tembok api membenarkan UDP 12201.
- SigNoz — titik akhir mesti menyertakan port 4318 dan boleh dicapai melalui HTTPS. Sahkan kunci pengingesan dan rantau ruang kerja.
Sahkan semuanya berfungsi
- Graylog — cari
service_name:xproxy-logsdan semak medan mesej pada panel kanan. - SigNoz — dalam Logs Explorer, tapis mengikut nama perkhidmatan yang dikonfigurasikan dengan tepat, cth.
service.name = "xproxy-region-a". Atau kosongkan penapis untuk melihat semua log dan sahkan pengingesan; buka mana-mana baris untuk melihat atribut.
Soalan Lazim
Bagaimana saya mengesahkan log sedang distrimkan?
Gunakan bahagian Sahkan semuanya berfungsi di atas: dalam Graylog cari service_name:xproxy-logs; dalam SigNoz buka Logs Explorer dan tapis mengikut service.name.
Bagaimana untuk membezakan peranti atau rantau?
Tetapkan Pengecam Hos setiap pelayan dan Nama Perkhidmatan setiap rantau atau kluster. Label ini muncul dalam setiap log.
Mengapa proxy_user kosong?
Anda mungkin menggunakan senarai putih IP; nama pengguna pengesahan tidak hadir.
Apakah perbezaan antara CONNECT dan ACCESS?
CONNECT ialah mewujudkan terowong; ACCESS ialah permintaan HTTP diproksikan ke destinasi.
Bagaimana saya boleh mendapatkan amaran terhadap ralat?
Cipta peraturan pada error_code != "00000" dalam tetingkap masa; kumpulkan mengikut service_name atau modem_position untuk mengenal pasti sumber.