Aktifkan presisi nanodetik dalam konfigurasi koleksi Logtail Anda dan konfigurasikan plugin penguraian waktu untuk mengumpulkan serta menyimpan cap waktu presisi tinggi pada tingkat milidetik, mikrodetik, atau nanodetik. Setelah pengumpulan, Simple Log Service (SLS) memisahkan waktu menjadi dua bidang: cap waktu standar tingkat detik __time__ dan offset nanodetik __time_ns_part__. Proses ini memungkinkan pengurutan dan analisis log presisi tinggi.
Kasus penggunaan
Dalam skenario seperti pelacakan terdistribusi, perdagangan frekuensi tinggi, profil kinerja, atau di mana urutan log yang ketat sangat penting, presisi waktu dalam hitungan detik tidak mencukupi. Log dalam skenario ini sering kali berisi cap waktu dengan presisi milidetik, mikrodetik, atau bahkan nanodetik. Panduan ini menjelaskan cara mengonfigurasi Logtail untuk mengumpulkan, menyimpan, dan menganalisis informasi waktu presisi tinggi ini, memastikan akurasi dan urutan kronologis analisis log Anda.
Arsitektur solusi
LoongCollector (Logtail) mengumpulkan cap waktu dengan presisi nanodetik dengan menyimpan offset tingkat nanodetik selain cap waktu standar tingkat detik. Desain ini memastikan kompatibilitas dengan sistem waktu berbasis detik yang ada sambil memberikan kemampuan pengurutan dengan presisi tinggi.
Alur kerja inti adalah sebagai berikut:
Aktifkan Dukungan Nanodetik: Di opsi lanjutan konfigurasi koleksi Logtail Anda, aktifkan pemrosesan waktu presisi tinggi dengan menyetel
{ "EnableTimestampNanosecond": true }. Ini memerlukan Logtail versi 1.8.0 atau lebih baru dan hanya tersedia di lingkungan Linux.Uraikan Log: Gunakan plugin penguraian, seperti pembatas, JSON, atau plugin ekspresi reguler, untuk mengekstrak string yang berisi cap waktu presisi tinggi dari log mentah.
Konversi Waktu: Plugin penguraian waktu mengonversi string waktu yang diekstraksi menjadi format waktu standar.
Simpan Waktu: Simple Log Service (SLS) membagi waktu menjadi dua bidang:
__time__: Cap waktu Unix standar (bilangan bulat panjang) dalam detik.__time_ns_part__: Bagian nanodetik (bilangan bulat panjang), dengan rentang nilai dari 0 hingga 999.999.999.
Kueri dan Analisis: Untuk melakukan analisis kronologis ketat, urutkan berdasarkan kedua bidang
__time__dan__time_ns_part__.
Langkah-langkah implementasi
Bagian ini menyediakan prosedur lengkap dari awal hingga akhir untuk pengumpulan log, penguraian, konfigurasi indeks, serta kueri dan analisis akhir, menggunakan log JSON dengan stempel waktu tingkat nanodetik sebagai contoh.
Langkah 1: Buat Proyek dan Logstore
Sebelum mengumpulkan log, Anda harus merencanakan dan membuat Proyek dan Logstore untuk mengelola serta menyimpannya.
Proyek: Unit manajemen sumber daya dalam Simple Log Service yang digunakan untuk mengisolasi dan mengelola log untuk proyek atau layanan yang berbeda.
Logstore: Unit penyimpanan untuk log di dalam sebuah Proyek.
Jika Anda sudah membuat Proyek dan Logstore, Anda dapat melewati langkah ini dan melanjutkan ke Langkah 2: Konfigurasi Kelompok Mesin (Instal LoongCollector).
Masuk ke Konsol Layanan Log.
Klik Create Project dan konfigurasikan parameter berikut:
Region: Pilih Region berdasarkan sumber log. Ini tidak dapat diubah setelah Proyek dibuat.
Nama Proyek: Nama tersebut harus unik secara global di Alibaba Cloud dan tidak dapat diubah setelah pembuatan.
Biarkan pengaturan default untuk konfigurasi lainnya dan klik Buat. Untuk informasi lebih lanjut tentang parameter lainnya, lihat Kelola Proyek.
Klik nama Proyek untuk masuk ke Proyek target.
Di panel navigasi di sebelah kiri, pilih
, lalu klik +.Di halaman Buat Logstore, lengkapi konfigurasi inti berikut:
Logstore Name: Tetapkan nama yang unik di dalam Proyek. Nama tersebut tidak dapat diubah setelah pembuatan.
Logstore Type: Pilih Standar atau jenis Query berdasarkan perbandingan spesifikasi.
Billing Method:
Pay-by-Feature: Biaya dihitung secara independen untuk setiap sumber daya, seperti penyimpanan, indeks, dan operasi baca/tulis. Metode ini cocok untuk skenario berskala kecil atau ketika penggunaan fitur belum pasti.
Pay-by-Written-Data: Biaya didasarkan hanya pada jumlah data mentah yang ditulis. Metode ini mencakup periode penyimpanan gratis selama 30 hari dan fitur gratis seperti transformasi data dan pengiriman. Model biayanya sederhana dan cocok untuk skenario di mana periode penyimpanan mendekati 30 hari atau jalur pemrosesan data kompleks.
Data Retention Period: Tetapkan jumlah hari untuk menyimpan log. Nilainya berkisar antara 1 hingga 3.650 hari. Nilai 3650 menunjukkan penyimpanan permanen. Defaultnya adalah 30 hari.
Biarkan pengaturan default untuk konfigurasi lainnya dan klik OK. Untuk informasi lebih lanjut tentang parameter lainnya, lihat Kelola Logstore.
Langkah 2: Konfigurasikan kelompok mesin (instal LoongCollector)
Setelah Anda membuat Proyek dan Logstore, instal LoongCollector di server Anda dan tambahkan ke kelompok mesin. Topik ini menggunakan Instance Elastic Compute Service (ECS) yang berada di Akun Alibaba Cloud dan Wilayah yang sama dengan Proyek Simple Log Service (SLS) sebagai contoh. Jika instance ECS Anda tidak berada di akun atau wilayah yang sama dengan Proyek, atau jika Anda menggunakan server yang dikelola sendiri, lihat Instal LoongCollector pada Server Linux untuk instalasi manual.
Fitur ini hanya tersedia untuk LoongCollector (Logtail) di Linux dan memerlukan versi Logtail 1.8.0 atau lebih baru. Tidak berpengaruh pada Windows.
Klik Project target. Di halaman Logstore:
Semua templat impor log teks hanya berbeda dalam plugin penguraiannya. Sisanya dari proses konfigurasi adalah sama dan dapat dimodifikasi nanti. |
|
Langkah-langkah Konfigurasi:
Di halaman Machine Group Configuration, konfigurasikan parameter berikut:
Use Case: Host Scenario
Installation Environment: ECS
Konfigurasikan Kelompok Mesin: Pilih tindakan yang sesuai berdasarkan status instalasi LoongCollector dan konfigurasi kelompok mesin dari server target:
Jika LoongCollector sudah terinstal dan merupakan bagian dari kelompok mesin, Anda dapat memilihnya langsung dari daftar Source Machine Group dan menambahkannya ke daftar Applied Machine Group tanpa membuatnya kembali.
Jika LoongCollector belum terinstal, klik Create Machine Group:
Langkah-langkah berikut akan membimbing Anda melalui instalasi otomatis LoongCollector dan pembuatan kelompok mesin baru.
Sistem secara otomatis mencantumkan instance ECS di Wilayah yang sama dengan Proyek. Pilih satu atau beberapa instance tempat Anda ingin mengumpulkan log.
Klik Install and Create as Machine Group. Sistem secara otomatis menginstal LoongCollector pada instance ECS yang dipilih.
Masukkan Name untuk kelompok mesin dan klik OK.
CatatanJika instalasi gagal atau tetap dalam keadaan menunggu, periksa apakah Wilayah ECS sama dengan Wilayah Proyek.
Untuk menambahkan server dengan LoongCollector yang sudah terinstal ke kelompok mesin yang ada, lihat Bagaimana cara menambahkan server ke kelompok mesin yang ada? di FAQ.
Langkah 3: Buat konfigurasi koleksi
Konfigurasikan di konsol
Setelah Anda menginstal LoongCollector dan mengonfigurasi kelompok mesin, pergi ke halaman Logtail Configuration untuk menentukan aturan pengumpulan dan pemrosesan log.
1. Aktifkan dukungan presisi nanodetik
Tentukan sumber pengumpulan log dan aturan, serta aktifkan dukungan presisi nanodetik.
Global Configurations:
Configuration Name: Tetapkan nama yang unik dalam Proyek. Anda tidak dapat mengubah nama setelah konfigurasi dibuat.
: Nyalakan sakelar Opsi Lanjutan dan masukkan konten JSON berikut untuk mengaktifkan dukungan presisi nanodetik:
{ "EnableTimestampNanosecond": true }
Input Configurations:
Type: Text Log Collection.
File Path: Jalur dari mana log dikumpulkan.
Linux: Harus dimulai dengan garis miring (
/), seperti/data/mylogs/**/*.log. Jalur ini cocok dengan semua file yang berakhiran.logdi direktori/data/mylogsdan subdirektorinya.Windows: Harus dimulai dengan huruf drive, seperti
C:\Program Files\Intel\**\*.Log.
Maximum Directory Monitoring Depth: Kedalaman direktori maksimum yang bisa dicocokkan oleh wildcard
**di File Path. Nilai default adalah 0, yang berarti hanya direktori saat ini yang dipantau.
2. Konfigurasikan plugin pemrosesan
Karena log sumber dalam format JSON, tambahkan plugin JSON - Parse di bagian Konfigurasi Pemrosesan. Plugin ini mengekstrak data dari objek JSON ke dalam bidang log terpisah.
Tambahkan sampel log
Asumsikan format log dalam file log adalah sebagai berikut, di mana bidang
asctimeberisi timestamp dengan presisi nanodetik.{ "asctime": "2023-10-25 23:51:10,199999999", "filename": "generate_data.py", "levelname": "INFO", "lineno": 51, "module": "generate_data", "message": "{\"no\": 14, \"inner_loop\": 166, \"loop\": 27451, \"uuid\": \"9be98c29-22c7-40a1-b7ed-29ae6c8367af\"}", "threadName": "MainThread" }Tambahkan plugin penguraian JSON
Klik Add Processing Plug-in, pilih , lalu klik Confirm.
Tambahkan plugin penguraian waktu
Konversikan string waktu yang diekstraksi (bidang
asctime) menjadi timestamp nanodetik standar dan gunakan sebagai waktu event untuk entri log.Nama Plugin
Fungsi Inti
Skenario Aplikasi
Parse Time
Penguraian waktu dasar.
Skema sederhana dengan format tetap.
Ekstrak Waktu Log (format strptime)
Fleksibel, mendukung berbagai format
strptime.Direkomendasikan. Fitur komprehensif dan kompatibel dengan standar industri.
Ekstrak Waktu Log (format bahasa Go)
Menggunakan format pustaka standar bahasa Go.
Untuk pengguna yang familiar dengan Go atau ketika format log sesuai dengan pustaka standar Go.
Parse time
Klik Add Processing Plug-in, pilih , dan konfigurasikan parameter berikut:
Source Field: Bidang asli yang menyimpan waktu sebelum penguraian log. Dalam contoh ini, itu adalah
asctime.Time Format: Tetapkan format waktu yang sesuai berdasarkan isi bidang waktu log. Dalam contoh ini, itu adalah
%Y-%m-%d %H:%M:%S,%f.%fmewakili bagian pecahan detik, dengan presisi hingga nanodetik.String format waktu harus persis cocok dengan format waktu dalam log asli, termasuk pemisah antara detik dan nanodetik (seperti
,atau.). Jika tidak, penguraian akan gagal.Time Zone: Pilih zona waktu bidang waktu log. Secara default, zona waktu mesin digunakan.
Ekstrak waktu log (format strptime)
Klik Add Processing Plug-in, pilih , dan konfigurasikan parameter berikut:
Source Field: Bidang asli yang menyimpan waktu sebelum penguraian log. Dalam contoh ini, itu adalah
asctime.Source Time Format: Tetapkan format waktu yang sesuai berdasarkan isi bidang waktu log. Dalam contoh ini, itu adalah
%Y-%m-%d %H:%M:%S,%f.%fmewakili bagian pecahan detik, dengan presisi hingga nanodetik.String format waktu harus persis cocok dengan format waktu dalam log asli, termasuk pemisah antara detik dan nanodetik (seperti
,atau.). Jika tidak, penguraian akan gagal.
Ekstrak waktu log (format bahasa Go)
Klik Add Processing Plug-in, pilih , dan konfigurasikan parameter berikut:
Source Time Field: Bidang asli yang menyimpan waktu sebelum penguraian log. Dalam contoh ini, itu adalah
asctime.Source Time Format: Tetapkan format waktu berdasarkan bidang waktu dalam log asli. Format tersebut harus mengikuti spesifikasi format waktu bahasa Go. Referensi waktu untuk pemformatan adalah waktu kelahiran Go:
2006-01-02 15:04:05 -0700 MST. Format waktu yang sesuai untuk contoh ini adalah2006-01-02 15:04:05,999999999.String format waktu harus persis cocok dengan format waktu dalam log asli, termasuk pemisah antara detik dan nanodetik (seperti
,atau.). Jika tidak, penguraian akan gagal.Result Time Field: Bidang tujuan untuk menyimpan waktu setelah penguraian. Dalam contoh ini, itu adalah
result_asctime.Result Time Format: Format waktu setelah penguraian, ditulis sesuai dengan spesifikasi format waktu bahasa Go. Dalam contoh ini, itu adalah
2006-01-02 15:04:05,999999999Z07:00.
3. Konfigurasikan indeks
Setelah Anda menyelesaikan konfigurasi Logtail, klik Next. Di halaman Query and Analysis Configuration:
Sistem mengaktifkan Indeks Teks Penuh secara default, memungkinkan Anda mencari konten log mentah menggunakan kata kunci.
Untuk melakukan kueri tepat berdasarkan bidang, tunggu Pratinjau Data dimuat, lalu klik Auto Generate Index. Simple Log Service menghasilkan Indeks Bidang berdasarkan entri pertama dalam data pratinjau.
Setelah konfigurasi selesai, klik Next untuk menyelesaikan seluruh proses pengumpulan.
Konfigurasikan menggunakan CRD (untuk Kubernetes)
Di dalam Container Service for Kubernetes (ACK) atau kluster Kubernetes yang dikelola sendiri, Anda dapat mengonfigurasi pengumpulan timestamp dengan presisi nanodetik menggunakan Custom Resource Definition (CRD) AliyunLog. Berikut ini adalah contoh konfigurasi untuk tiga plugin berbeda.
Parse time
apiVersion: telemetry.alibabacloud.com/v1alpha1
kind: ClusterAliyunPipelineConfig
metadata:
name: ${your-config-name}
spec:
config:
aggregators: []
global:
EnableTimestampNanosecond: true
inputs:
- Type: input_file
FilePaths:
- /test/sls/json_nano.log
MaxDirSearchDepth: 0
FileEncoding: utf8
EnableContainerDiscovery: true
processors:
- Type: processor_parse_json_native
SourceKey: content
- Type: processor_parse_timestamp_native
SourceKey: asctime
SourceFormat: '%Y-%m-%d %H:%M:%S,%f'
flushers:
- Type: flusher_sls
Logstore: ${your-logstore-name}
sample: |-
{
"asctime": "2025-11-03 15:39:14,229939478",
"filename": "log_generator.sh",
"levelname": "INFO",
"lineno": 204,
"module": "log_generator",
"message": "{\"no\": 45, \"inner_loop\": 15, \"loop\": 1697, \"uuid\": \"80366fca-a57d-b65a-be07-2ac1173505d9\"}",
"threadName": "MainThread"
}
project:
name: ${your-project-name}
logstores:
- name: ${your-logstore-name}
Ekstrak waktu log (format strptime)
apiVersion: telemetry.alibabacloud.com/v1alpha1
kind: ClusterAliyunPipelineConfig
metadata:
name: ${your-config-name}
spec:
config:
aggregators: []
global:
EnableTimestampNanosecond: true
inputs:
- Type: input_file
FilePaths:
- /test/sls/json_nano.log
MaxDirSearchDepth: 0
FileEncoding: utf8
EnableContainerDiscovery: true
processors:
- Type: processor_parse_json_native
SourceKey: content
- Type: processor_strptime
SourceKey: asctime
Format: '%Y-%m-%d %H:%M:%S,%f'
KeepSource: true
AlarmIfFail: true
AdjustUTCOffset: false
flushers:
- Type: flusher_sls
Logstore: ${your-logstore-name}
sample: |-
{
"asctime": "2025-11-03 15:39:14,229939478",
"filename": "log_generator.sh",
"levelname": "INFO",
"lineno": 204,
"module": "log_generator",
"message": "{\"no\": 45, \"inner_loop\": 15, \"loop\": 1697, \"uuid\": \"80366fca-a57d-b65a-be07-2ac1173505d9\"}",
"threadName": "MainThread"
}
project:
name: ${your-project-name}
logstores:
- name: ${your-logstore-name}
Ekstrak waktu log (format bahasa Go)
apiVersion: telemetry.alibabacloud.com/v1alpha1
kind: ClusterAliyunPipelineConfig
metadata:
name: ${your-config-name}
spec:
config:
aggregators: []
global:
EnableTimestampNanosecond: true
inputs:
- Type: input_file
FilePaths:
- /test/sls/json_nano.log
MaxDirSearchDepth: 0
FileEncoding: utf8
EnableContainerDiscovery: true
processors:
- Type: processor_parse_json_native
SourceKey: content
- Type: processor_gotime
SourceKey: asctime
SourceFormat: '2006-01-02 15:04:05,999999999'
DestKey: result_asctime
DestFormat: '2006-01-02 15:04:05,999999999Z07:00'
SetTime: true
KeepSource: true
NoKeyError: true
AlarmIfFail: true
flushers:
- Type: flusher_sls
Logstore: ${your-logstore-name}
sample: |-
{
"asctime": "2025-11-03 15:39:14,229939478",
"filename": "log_generator.sh",
"levelname": "INFO",
"lineno": 204,
"module": "log_generator",
"message": "{\"no\": 45, \"inner_loop\": 15, \"loop\": 1697, \"uuid\": \"80366fca-a57d-b65a-be07-2ac1173505d9\"}",
"threadName": "MainThread"
}
project:
name: ${your-project-name}
logstores:
- name: ${your-logstore-name}
Langkah 4: Verifikasi hasil
Setelah konfigurasi selesai, tunggu beberapa saat hingga data log baru terkumpul ke dalam Logstore.
Di halaman Query and Analysis pada Log Service Console, periksa log yang telah dikumpulkan. Console secara otomatis mengoptimalkan tampilan informasi waktu berpresisi tinggi dalam format milidetik, mikrodetik, atau nanodetik.

FAQ
Mengapa Logtail gagal mengurai timestamp nanodetik saya?
Setelah mengaktifkan pengumpulan dengan presisi nanodetik di Logtail, saya menemukan bahwa timestamp diuraikan secara tidak benar, sehingga menghasilkan nilai waktu yang tidak valid untuk log saya.

Penyebab
Masalah ini hampir selalu disebabkan oleh ketidaksesuaian antara string format waktu dalam konfigurasi Logtail Anda dan format timestamp sebenarnya dalam log Anda. Format tersebut harus cocok secara tepat, termasuk karakter pemisah (misalnya, koma
,) antara detik dan bagian fraksional.Solusi
Untuk memperbaiki ini, Anda perlu mendiagnosis kesalahan dan memperbaiki string format dalam konfigurasi Logtail Anda.
Langkah 1: Diagnosis kesalahan penguraian
Pertama, konfirmasikan kesalahan penguraian dengan memeriksa log plugin Logtail. SSH ke server Anda dan periksa file
/usr/local/ilogtail/logtail_plugin.LOGuntuk pesanSTRPTIME_PARSE_ALARM.tail -f /usr/local/ilogtail/logtail_plugin.LOG Kesalahan berikut menunjukkan ketidaksesuaian format.Langkah 2: Perbaiki string format waktu
Perbarui string format waktu dalam konfigurasi pengumpulan Anda agar persis sesuai dengan timestamp log Anda. Untuk timestamp seperti
2023-10-26 00:30:10,199999999, yang menggunakan pemisah koma, perbaikannya adalah sebagai berikut:Format salah:
%Y-%m-%d %H:%M:%S %f(menggunakan spasi sebagai pemisah)Format benar:
%Y-%m-%d %H:%M:%S,%f(menggunakan koma sebagai pemisah)
Terapkan perubahan ini dalam pengaturan untuk plugin penguraian waktu Anda.
Biaya dan keterbatasan
Dampak Biaya: Bidang
time_ns_partdisimpan sebagai bagian dari konten log, yang sedikit meningkatkan ukuran penyimpanan log mentah.Keterbatasan Lingkungan: Fitur ini hanya tersedia untuk Logtail versi 1.8.0 dan yang lebih baru di Linux serta tidak berpengaruh pada Windows.
Dokumen terkait
Lampiran 1: Format waktu log umum
Di Linux, Logtail mendukung semua format waktu yang disediakan oleh fungsi strftime.
Format | Deskripsi | Contoh |
%a | Nama hari dalam singkatan. | Jum |
%A | Nama hari lengkap. | Jumat |
%b | Nama bulan dalam singkatan. | Jan |
%B | Nama bulan lengkap. | Januari |
%d | Hari dalam bulan sebagai angka desimal dengan padding nol (01-31). | 07, 31 |
%f | Bagian pecahan dari detik (milidetik, mikrodetik, atau nanodetik). | 123 |
%h | Nama bulan dalam singkatan, sama seperti %b. | Jan |
%H | Jam (format 24 jam) sebagai angka desimal. | 22 |
%I | Jam (format 12 jam) sebagai angka desimal. | 11 |
%m | Bulan sebagai angka desimal dengan padding nol (01-12). | 08 |
%M | Menit sebagai angka desimal dengan padding nol (00-59). | 59 |
%n | Karakter baris baru. | Karakter baris baru |
%p | Ekuivalen lokal untuk AM atau PM. | AM, PM |
%r | Waktu dalam format 12 jam sesuai lokal, sama seperti %I:%M:%S %p. | 11:59:59 AM |
%R | Jam dan menit, sama seperti %H:%M. | 23:59 |
%S | Detik sebagai angka desimal dengan padding nol (00-59). | 59 |
%t | Karakter tab. | Tidak ada |
%y | Tahun tanpa abad sebagai angka desimal dengan padding nol (00-99). | 04, 98 |
%Y | Tahun dengan abad sebagai angka desimal. | 2004, 1998 |
%C | Abad sebagai angka desimal (00-99). | 16 |
%e | Hari dalam bulan sebagai angka desimal dengan padding spasi ( 1-31). Spasi di depan digunakan untuk angka satu digit. | 7, 31 |
%j | Hari dalam tahun sebagai angka desimal dengan padding nol (001-366). | 365 |
%u | Hari dalam minggu sebagai angka desimal (1-7), dimana 1 adalah Senin. | 2 |
%U | Nomor minggu dalam tahun (00-53), dengan Minggu sebagai hari pertama dalam minggu. | 23 |
%V | Nomor minggu ISO 8601 dalam tahun (01-53), dengan Senin sebagai hari pertama dalam minggu. Jika minggu yang berisi tanggal 1 Januari memiliki empat hari atau lebih di tahun baru, maka itu adalah minggu 1; jika tidak, itu adalah minggu tahun sebelumnya dan minggu berikutnya adalah minggu 1. | 24 |
%w | Hari dalam minggu sebagai angka desimal (0-6), dimana 0 adalah Minggu. | 5 |
%W | Nomor minggu dalam tahun (00-53), dengan Senin sebagai hari pertama dalam minggu. | 23 |
%c | String standar untuk tanggal dan waktu. | Sel Nov 20 14:12:58 2020 |
%x | String standar untuk tanggal tanpa waktu. | Sel Nov 20 2020 |
%X | String standar untuk waktu tanpa tanggal. | 11:59:59 |
%s | Timestamp Unix. | 1476187251 |
Contoh format waktu
Tabel berikut mencantumkan standar waktu umum, contoh, serta ekspresi waktu yang sesuai.
Contoh | Ekspresi waktu | Standar waktu |
2017-12-11 15:05:07 | %Y-%m-%d %H:%M:%S | Kustom |
[2017-12-11 15:05:07.012] | [%Y-%m-%d %H:%M:%S.%f] | Kustom |
2017-12-11 15:05:07.123 | %Y-%m-%d %H:%M:%S.%f | Kustom |
02 Jan 06 15:04 MST | %d %b %y %H:%M | RFC822 |
02 Jan 06 15:04 -0700 | %d %b %y %H:%M | RFC822Z |
Senin, 02-Jan-06 15:04:05 MST | %A, %d-%b-%y %H:%M:%S | RFC850 |
Sen, 02 Jan 2006 15:04:05 MST | %a, %d %b %Y %H:%M:%S %Z | RFC1123 |
2006-01-02T15:04:05Z | %Y-%m-%dT%H:%M:%SZ | RFC3339 |
2006-01-02T15:04:05.999999999Z | %Y-%m-%dT%H:%M:%S.%fZ | RFC3339Nano |
1637843406 | %s | Kustom |
1637843406123 | %s | Kustom (Simple Log Service memprosesnya pada presisi tingkat detik) |
Lampiran 2: Format waktu bahasa Go
Berikut adalah contoh format waktu dari pustaka standar Go:
const (
Layout = "01/02 03:04:05PM '06 -0700" // Waktu referensi, dalam urutan numerik.
ANSIC = "Mon Jan _2 15:04:05 2006"
UnixDate = "Mon Jan _2 15:04:05 MST 2006"
RubyDate = "Mon Jan 02 15:04:05 -0700 2006"
RFC822 = "02 Jan 06 15:04 MST"
RFC822Z = "02 Jan 06 15:04 -0700" // RFC822 dengan zona numerik
RFC850 = "Monday, 02-Jan-06 15:04:05 MST"
RFC1123 = "Mon, 02 Jan 2006 15:04:05 MST"
RFC1123Z = "Mon, 02 Jan 2006 15:04:05 -0700" // RFC1123 dengan zona numerik
RFC3339 = "2006-01-02T15:04:05Z07:00"
RFC3339Nano = "2006-01-02T15:04:05.999999999Z07:00"
Kitchen = "3:04PM" // Cap waktu yang praktis.
Stamp = "Jan _2 15:04:05"
StampMilli = "Jan _2 15:04:05.000"
StampMicro = "Jan _2 15:04:05.000000"
StampNano = "Jan _2 15:04:05.000000000"
)