PRIVOXY-LOG-PARSER(1) User Contributed Perl Documentation PRIVOXY-LOG-PARSER(1)

privoxy-log-parser - یک تجزیه‌گر و برجسته‌ساز نحو برای پیام‌های لاگ Privoxy

privoxy-log-parser [--detect-inactivity] [--inactivity-threshold msecs] [--html-output] [--no-msecs] [--no-syntax-higlighting] [--statistics] [--shorten-thread-ids] [--show-ineffective-filters] [--url-statistics-threshold] [--version]

دستور privoxy-log-parser پیام‌های لاگ Privoxy را می‌خواند و:

- خطوط شناخته‌شده را برجسته‌سازی نحوی می‌کند،

- برخی از آن‌ها را برای درک آسان‌تر قالب‌بندی مجدد می‌کند،

- پیام‌های با فایده کمتر را فیلتر می‌کند، و

- (در برخی موارد) اطلاعات اضافی، مانند نسبت فشرده‌سازی یا نحوه تأثیر یک فیلتر بر اندازه محتوا را محاسبه می‌کند.

با privoxy-log-parser باید بتوانید سطح لاگ Privoxy را بدون سردرگمی ناشی از حجم بالای خروجی افزایش دهید. به عنوان مثال برای "debug 64"، دستور privoxy-log-parser (به‌طور پیش‌فرض) فقط پیام‌هایی را نشان می‌دهد که بر محتوا تأثیر می‌گذارند. اگر فیلتری به هیچ تطابقی منجر نشود، privoxy-log-parser پیام "filter foo caused 0 hits" را پنهان می‌کند.

[--detect-inactivity] به‌جای برجسته‌سازی نحوی، دوره‌های عدم فعالیت لاگ را که بیش از مقدار میلی‌ثانیه‌های مشخص‌شده با گزینه --inactivity-threshold است تشخیص می‌دهد. عمدتاً برای اشکال‌زدایی مفید است.

[--host-statistics-threshold] فقط در صورتی تعداد درخواست‌های یک میزبان را نشان می‌دهد که بیشتر یا مساوی آستانه داده‌شده باشد. اگر آستانه 0 باشد، آمار میزبان غیرفعال می‌شود.

[--html-output] هنگام برجسته‌سازی نحوی از HTML و CSS استفاده می‌کند. اگر این گزینه حذف شود، از توالی‌های گریز ANSI استفاده می‌شود مگر اینکه --no-syntax-highlighting فعال باشد. این گزینه فقط برای آسان‌تر کردن قرار دادن بخش‌هایی از لاگ در صفحات وب در نظر گرفته شده است. این گزینه هیچ ورودی‌ای را escape نمی‌کند!

[--inactivity-threshold msecs] تعداد میلی‌ثانیه‌های بین پیام‌های لاگ را مشخص می‌کند تا هنگام اجرا در حالت [--detect-inactivity] به عنوان دوره عدم فعالیت در نظر گرفته شود.

[--keep-date] تاریخ را هنگام چاپ پیام‌های لاگِ برجسته‌شده حذف نمی‌کند. هنگام تجزیه هم‌زمان چندین فایل لاگ مفید است.

[--no-msecs] تفکیک‌پذیری میلی‌ثانیه‌ای را انتظار ندارد.

[--no-syntax-highlighting] برجسته‌سازی نحوی را غیرفعال می‌کند. زمانی مفید است که خروجی فیلترشده از طریق لوله به less فرستاده می‌شود و در این حالت کدهای کنترلی ANSI کار نمی‌کنند، یا زمانی که خود ترمینال از این کدهای کنترلی پشتیبانی نمی‌کند.

[--passed-request-statistics-threshold] تعداد درخواست‌ها را برای درخواست‌های عبور داده‌شده تنها در صورتی نشان می‌دهد که بیشتر یا مساوی آستانه داده‌شده باشد. اگر آستانه 0 باشد، آمار درخواست‌های عبور داده‌شده غیرفعال می‌شود.

[--shorten-thread-ids] شناسه‌های thread را به یک عدد ده‌دهی سه‌رقمی کوتاه می‌کند. توجه داشته باشید که نگاشت شناسه‌های thread به شناسه‌های کوتاه‌شده در زمان اجرا ایجاد می‌شود و بنابراین با توجه به ورودی تغییر می‌کند.

[--show-ineffective-filters] خطوط لاگ مربوط به فیلترهایی را که محتوا را تغییر نداده‌اند پنهان نمی‌کند.

[--show-complete-request-distribution] توزیع کامل درخواست‌های کلاینت را در خروجی --statistics نشان می‌دهد. بدون این گزینه فقط ده مورد از رایج‌ترین مقادیر نمایش داده می‌شوند.

[--statistics] به‌جای برجسته‌سازی نحوی پیام‌های لاگ، آمارهای مختلفی را جمع‌آوری می‌کند. این یک ویژگی آزمایشی است؛ اگر نتایج نادرست به نظر برسند، احتمالاً واقعاً چنین است. همچنین توجه داشته باشید که اگر Privoxy و Privoxy-Log-Parser با یکدیگر هماهنگ نباشند، نتایج تقریباً به‌طور قطع نادرست خواهند بود.

[--strict-checks] هنگام تولید آمار، داده‌های ورودی را با دقت بیشتری بررسی کرده و در صورت غیرمنتظره بودن داده‌ها، حتی اگر بر نتایج بی‌تأثیر باشد، عملیات را متوقف می‌کند. این گزینه سرعت تجزیه را به‌طور چشمگیری کاهش می‌دهد و انتظار نمی‌رود مشکلات بااهمیتی را شناسایی کند. هنگام برجسته‌سازی، در صورت وجود پیام‌های ناشناخته‌ای که نمی‌توان آن‌ها را به‌درستی برجسته کرد، هشدار چاپ می‌کند.

[--unbreak-lines-only] تلاش می‌کند خطوطی را که به دلیل یک کلاینت ایمیل معیوب یا پیکربندی عجیب خراب شده و در نتیجه دیگر به‌درستی تشخیص داده نمی‌شوند، اصلاح کند. تنها برخی از خرابی‌ها را رفع می‌کند، اما ممکن است به اندازه کافی خوب یا حداقل بهتر از هیچ باشد. کار دیگری انجام نمی‌دهد، بنابراین احتمالاً می‌خواهید دوباره خروجی را به privoxy-log-parser بفرستید.

[--url-statistics-threshold] تعداد درخواست‌های یک منبع را تنها در صورتی نشان می‌دهد که بیشتر یا مساوی آستانه داده‌شده باشد. اگر آستانه 0 باشد، آمار URL غیرفعال می‌شود.

[--version] نسخه را چاپ کرده و خارج می‌شود.

برای پایش یک فایل لاگ:

tail -F /usr/jails/privoxy-jail/var/log/privoxy/privoxy.log | privoxy-log-parser

اگر پیاده‌سازی tail شما فاقد پشتیبانی از '-F' است یا اگر لاگ به هر حال چرخش (rotate) نمی‌شود، '-f' را جایگزین '-F' کنید. مکان فایل لاگ به سیستم شما بستگی دارد!

برای پایش Privoxy بدون نیاز به نوشتن آن در یک فایل لاگ:

privoxy --no-daemon /usr/jails/privoxy-jail/usr/local/etc/privoxy/config 2>&1 | privoxy-log-parser

مجدداً، مکان فایل پیکربندی به سیستم شما بستگی دارد. تغییر مسیر خروجی به شل شما وابسته است؛ دستور بالا با شل‌های مبتنی بر bourne کار می‌کند.

برای خواندن یک فایل لاگ پردازش‌شده Privoxy از ابتدا تا انتها، با سرعتی کمی بیشتر از آنچه بتوانید بخوانید:

privoxy-log-parser < /usr/jails/privoxy-jail/var/log/privoxy/privoxy.log

این دستور احتمالاً فقط برای پر کردن نمایشگرها در پس‌زمینه فیلم‌های هکری مفید است.

برجسته‌سازی نحوی با توالی‌های گریز ANSI در صورتی که رنگ پس‌زمینه شما سیاه نباشد عجیب به نظر خواهد رسید.

برخی پیام‌ها هنوز شناسایی نشده‌اند و به‌طور کامل برجسته نخواهند شد.

دستور privoxy-log-parser با در نظر گرفتن Privoxy 3.0.7 یا بالاتر توسعه یافته است؛ استفاده از نسخه‌های قدیمی‌تر Privoxy احتمالاً منجر به افزایش خطوط لاگ ناشناخته خواهد شد.

فایل‌های لاگ Privoxy معمولاً حجیم هستند. اگر از برجسته‌سازی HTML استفاده کنید، برخی از مرورگرها نمی‌توانند آن‌ها را مدیریت کنند، دچار اختلال شده و در نهایت به دلیل خطاهای segmentation fault یا استثناهای غیرمنتظره کرش می‌کنند. این مشکل از جانب مرورگر است و خطای privoxy-log-parser نیست.

هنوز بسیاری از تنظیمات را نمی‌توان از طریق گزینه‌های خط فرمان کنترل کرد.

privoxy(8)

Fabian Keil <fk@fabiankeil.de>

2026-04-09 perl v5.42.2