Skip to content

گزارش

بلوک log گزارش‌گر sing-box را پیکربندی می‌کند: سطح شدت، محل نوشتن، این‌که آیا برچسب زمانی گنجانده شود، و این‌که آیا گزارش‌گیری به‌طور کامل غیرفعال شود.

گزینه‌ها

فیلدنوعپیش‌فرضمقادیر مجازتوضیحات
disabledboolfalsetrue | falseوقتی true باشد، sing-box یک کارخانهٔ گزارش بدون عملیات نصب می‌کند. صرف‌نظر از سایر فیلدها، هیچ‌چیز در هیچ‌کجا نوشته نمی‌شود.
levelstringtracetrace | debug | info | warn | warning | error | fatal | panicحداقل سطح شدت. رشتهٔ خالی به‌عنوان پیش‌فرض در نظر گرفته می‌شود. کلمات کلیدی "warn" و "warning" نام‌مستعار پذیرفته‌شده هستند.
outputstring(stderr)<empty> | stderr | stdout | <file path>محل نوشتن سطرهای گزارش. مقدار خالی به‌طور پیش‌فرض به stderr می‌رود؛ "stderr" و "stdout" نام‌های جریان لفظی هستند؛ هر مقدار دیگری به‌عنوان مسیر فایل در نظر گرفته می‌شود.
timestampboolfalsetrue | falseوقتی true باشد، هر سطر با برچسب زمانی به شکل "-0700 2006-01-02 15:04:05" پیشوند می‌شود. برای ظاهر شدن برچسب زمانی در خروجی فایل لازم است.

منبع: option/options.go:40-46 · ثابت‌شده در v1.13.11 (553cfa1)

مثال‌ها

رفتار پیش‌فرض (فایل به‌کلی 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 را به‌طور صریح تنظیم کنند.
  • output با مقدار "stderr" و "stdout" نام‌های جریان لفظی هستند؛ هر مقدار غیرخالی دیگر به‌عنوان مسیر فایل در نظر گرفته می‌شود (log/log.go:32-45).
  • هنگام نوشتن در یک فایل، رنگ‌ها به‌اجبار خاموش و برچسب‌های زمانی به‌اجبار روشن می‌شوند، صرف‌نظر از تنظیمات timestamp — بنگرید به راه‌اندازی قالب‌بند در log/log.go:46-52.

منبع: option/options.go:40-46 · v1.13.11 (553cfa1)

Core Tutorial اثر Argsment