Apa arti us= dalam baris log OpenVPN, dan cara mengonversinya
Bidang us= adalah bagian mikrodetik dari stempel waktu log, bukan ID sesi. Isi sampai enam digit dan baca seluruh baris sebelum membandingkan jam.
Log teks OpenVPN menaruh tanggal, waktu, dan sebuah us= nilai pada baris yang sama, dan yang terakhir dari ketiganya adalah bagian yang salah dibaca orang. Itu adalah komponen mikrodetik dari stempel waktu tersebut, dicetak tanpa pengisian nol. Itu bukan pengenal sesi, nama pengguna, atau penghitung, dan memperlakukannya begitu mengubah pecahan detik menjadi kesimpulan salah yang percaya diri. Konversikan sebagai pecahan dari detik yang ditampilkan dan sisa baris tetap terbaca.
Apa arti ketiga bagian baris
Tanggal dan detik utuh datang lebih dulu, dan us= membawa sisa di bawah satu detik. Nilai 12345 adalah dua belas ribu tiga ratus empat puluh lima mikrodetik, yaitu 0.012345 detik, jadi baris itu menjelaskan 09:15:30.012345 ketika waktu yang dicetak adalah 09:15:30. Penghitung mulai lagi pada setiap detik baru, sehingga baris berikutnya dapat mencetak pecahan lebih kecil tanpa ada jam yang berjalan mundur. Hanya stempel waktu lengkap yang mengurutkan peristiwa.
2026-11-02 08:41:07 us=4820
Satuannya adalah satu sepersejuta detik, dan us= mencakup seluruh rentang dari 0.000000 hingga 0.999999. Lima digit menjelaskan puluhan milidetik, sedangkan enam menjelaskan ratusan milidetik hingga hampir satu detik penuh. Jika konversi menghasilkan pecahan lebih besar dari satu, titik desimalnya bergeser dan aritmetikanya salah. Melakukannya dengan tangan berarti membagi bilangan bulat yang dicetak dengan satu juta dan menambahkannya ke detik utuh.
Pengisian adalah jebakannya. us=42 adalah empat puluh dua mikrodetik, ditulis sebagai .000042, bukan .42. Isi bilangan bulat ke enam tempat di kiri sebelum mengonversi, dan nilainya berhenti tampak seperti pecahan desimal dari digit yang Anda lihat.
Mengonversi baris tanpa kalkulator
Ambil detik yang dicetak sebagai basis dan perlakukan us= sebagai pecahannya. Untuk 09:15:30 dengan us=12345 bentuk desimalnya adalah 09:15:30.012345; untuk us=900000 nilainya 09:15:30.900000. Digit setelah titik desimal adalah bilangan bulat yang sudah diisi, tidak pernah bilangan bulat dibagi seribu. Menuliskan bentuk enam digit lebih dulu mencegah sebagian besar kesalahan.
Jika Anda mengurai log menjadi stempel waktu, uraikan tanggal, detik utuh, dan pecahannya bersama-sama. Parser yang mengasumsikan milidetik akan mengurutkan peristiwa dengan salah sebesar faktor seribu, dan keluarannya tetap terlihat masuk akal.
Ketika bidang itu hilang dari log
Bagian mikrodetik termasuk dalam format log teks dan hanya muncul ketika stempel waktu terperinci diaktifkan. Di pemformat stempel waktu OpenVPN 2.6, bagian itu ditambahkan ketika keluaran tersebut aktif dan nilai yang disimpan bukan nol. Jadi log tanpa us= tidak mengatakan apa pun tentang jam atau build; biasanya itu berarti verbositas yang dikonfigurasi terlalu rendah. Periksa konfigurasi sebelum menyalahkan sinkronisasi waktu.
Pengaturan itu mudah dipastikan dari konfigurasi server. Jalankan perintah di bawah dan baca angka yang dikembalikannya. Keluaran stempel waktu terperinci muncul pada verbositas 4, jadi nilai yang lebih rendah menjelaskan bidang yang hilang tanpa gangguan lain. Menjalankan konfigurasi yang sama dengan --verb 4 menampilkan bidang itu setelah daemon dimulai ulang dengan tingkat tersebut.
grep -nE '^[[:space:]]*verb[[:space:]]+[0-9]' /etc/openvpn/server.conf
Menaikkan verbositas menambah detail ke log; itu tidak memperbaiki jam. Setelah mulai ulang, bandingkan baris baru dengan baris lama untuk memastikan formatnya berubah, dan turunkan tingkatnya lagi setelah pertanyaan terjawab.
Apa yang tidak dibuktikan enam digit
Enam digit menjelaskan resolusi, dan resolusi tidak mengatakan apa pun tentang apakah dua host sepakat soal waktu. Klien dan server dapat sama-sama mencetak mikrodetik sementara jam mereka berbeda beberapa detik. Saat Anda menghubungkan peristiwa antarmesin, catat zona waktu dan setiap offset yang diketahui, dan utamakan bidang yang menyebut peer atau sesi di atas stempel waktu mana pun. Dua baris yang berbagi pecahan belum tentu koneksi yang sama.
Kolektor dapat memberi cap pada setiap baris saat kedatangan, yang menambahkan stempel waktu kedua milik kolektor dan bukan milik OpenVPN. Identifikasi mana yang Anda baca sebelum membandingkannya, dan simpan baris mentahnya agar perbandingan dapat diulang.
Nilai us= baru tidak membuktikan bahwa klien baru masuk, dan nilai berulang tidak membuktikan peristiwa ganda. Bidang peer dan koneksi menjawab pertanyaan itu.