Журнал
Блок log настраивает логгер sing-box: уровень важности, место записи, наличие метки времени и полное отключение журналирования.
Параметры
| Поле | Тип | По умолчанию | Допустимые значения | Описание |
|---|---|---|---|---|
disabled | bool | false | true | false | При значении true sing-box устанавливает пустую (no-op) фабрику логов. Ничего никуда не записывается независимо от остальных полей. |
level | string | trace | trace | debug | info | warn | warning | error | fatal | panic | Минимальный уровень важности. Пустая строка трактуется как значение по умолчанию. Ключевые слова "warn" и "warning" — допустимые синонимы. |
output | string | (stderr) | <empty> | stderr | stdout | <file path> | Куда записывать строки журнала. Пустое значение означает stderr; "stderr" и "stdout" — буквальные имена потоков; любое другое значение трактуется как путь к файлу. |
timestamp | bool | false | true | false | При значении true каждая строка предваряется меткой времени вида "-0700 2006-01-02 15:04:05". Обязательно, чтобы метка времени появлялась в файловом выводе. |
Исходный код: option/options.go:40-46 · зафиксировано на v1.13.15 (3708fa1)
Примеры
Поведение по умолчанию (блок log в файле полностью опущен — эквивалентно {}):
json
{
"log": {}
}Тихая конфигурация sing-box для развёртывания:
json
{
"log": {
"level": "warn",
"timestamp": true,
"output": "/var/log/sing-box.log"
}
}Полностью отключить журналирование:
json
{
"log": {
"disabled": true
}
}Примечания
- Если
levelоставлен пустым, уровень по умолчанию —trace(самый подробный), а не info — см.log/log.go:67-69. В большинстве боевых конфигурацийlevelстоит задавать явно. - Значения
"stderr"и"stdout"дляoutput— буквальные имена потоков; любое другое непустое значение трактуется как путь к файлу (log/log.go:32-45). - При записи в файл цвета принудительно отключаются, а метки времени принудительно включаются независимо от настройки
timestamp— см. настройку форматтера вlog/log.go:46-52.
Исходный код: option/options.go:40-46 · v1.13.15 (3708fa1)
