Константа log.Ldate

Константа log.Ldate является битовой маской для настройки формата вывода логов в пакете log. При ее использовании в выводе каждой лог-строки будет добавляться текущая дата в формате "2006/01/02" (год/месяц/день). Данная константа применяется вместе с функцией log.SetFlags или при создании нового логгера через log.New.

Синтаксис

golog.SetFlags(log.Ldate | log.Ltime)

Константа log.Ldate может комбинироваться с другими константами через побитовое ИЛИ (|). В примере выше она комбинируется с log.Ltime для вывода даты и времени.

Пример

Давайте настроим логгер на вывод даты и времени для каждой записи:

gopackage main

import (
  "log"
  "os"
)

func main() {
  log.SetFlags(log.Ldate | log.Ltime)
  log.Println("Server started")
  log.Println("Processing request")
}

Результат выполнения кода:

go"2026/09/04 15:30:45 Server started"
"2026/09/04 15:30:45 Processing request"

Пример

Давайте создадим логгер с выводом только даты и сообщения, без времени:

gopackage main

import (
  "log"
  "os"
)

func main() {
  logger := log.New(os.Stdout, "INFO: ", log.Ldate)
  logger.Println("Backup completed")
  logger.Println("Disk usage: 75%")
}

Результат выполнения кода:

go"INFO: 2026/09/04 Backup completed"
"INFO: 2026/09/04 Disk usage: 75%"

Пример

Давайте сравним вывод с датой и без нее. Сначала настроим логгер без даты:

gopackage main

import (
  "log"
  "os"
)

func main() {
  log.SetFlags(0)
  log.Println("Message without date")

  log.SetFlags(log.Ldate)
  log.Println("Message with date")
}

Результат выполнения кода:

go"Message without date"
"2026/09/04 Message with date"

Смотрите также

  • константу log.Ltime,
    которая добавляет время к выводу логов
  • константу log.Lmicroseconds,
    которая добавляет микросекунды к выводу логов
  • константу log.LstdFlags,
    которая устанавливает стандартный формат с датой и временем
  • функцию log.SetFlags,
    которая устанавливает флаги для вывода логов