HAProxy একটি ফাইলে লগিং সমর্থন করে?


14

আমি সবেমাত্র আমার পরীক্ষার সার্ভারে হাইপোক্সি ইনস্টল করেছি ।

সিসলগের পরিবর্তে কোনও স্থানীয় ফাইলে এটির লগগুলি লেখার কোনও উপায় আছে কি?

এটি কেবলমাত্র পরীক্ষার জন্য তাই আমি আমার সমস্ত পরীক্ষার ডেটা দিয়ে পোর্টগুলি খুলতে / ছত্রভঙ্গ করতে শুরু করতে চাই না।

দুর্ভাগ্যক্রমে, কেবলমাত্র আমি যে তথ্যটি পাই তা সিসলগ সার্ভারে লগিংয়ের চারপাশে ঘোরে।

আমি ব্যবহার করার চেষ্টা করেছি:

log /home/user/ha.log local0

আমার কনফিগারেশনে কিন্তু এটি আমাকে বলেছিল:

[ALERT] 039/095022 (9528) : sendto logger #1 failed: No such file or directory (errno=2)

আমি আবার চালু যখন। সুতরাং আমি ফাইলটি তৈরি করে touch /home/user/ha.logআবার পেলাম যা আমি পেলাম:

[ALERT] 039/095055 (9593) : sendto logger #1 failed: Connection refused (errno=111)

এটি কি সম্ভব, নাকি আমার পরীক্ষার ডেটা দেখতে সিসলগ ইত্যাদি কনফিগার করতে হবে?


2
আমি মনে করি না যে HAProxy কোনও ফাইলে লগ করতে পারে এবং আমি সন্দেহ করি এর কারণ হ'ল ডিস্কে লেখার বিষয়টি একটি ব্লকিং অপারেশন। আপনি কেন সত্যই স্লোগল ব্যবহার করতে চান না? কনফিগারেশন সমস্ত জটিল নয়। আপনি HAProxy- তে একটি স্থানীয় সুবিধা নির্ধারণ করতে পারেন এবং আপনার সিস্টেগ ডেমনকে বিভিন্ন ফাইলগুলিতে লিখতে এবং অন্য সিসলগ ফাইলগুলিতে (বা নেটওয়ার্ক স্ট্রিম) কনফিগার করতে পারেন, যদি আপনি না চান যে HAProxy লগগুলিতে সমস্ত কিছু মিশ্রিত হয় to অন্য।
মাইকেল - sqlbot

উত্তর:


14

Haproxy কেবল ফাইলগুলিতে লগিং সমর্থন করে না। ডকুমেন্টেশনে যেমন বলা হয়েছে ( https://cbonte.github.io/haproxy-dconv/1.8/configration.html#3.1-log ) "লগ" বিবৃতিটি প্রথম পরামিতি হিসাবে একটি ঠিকানা হিসাবে নেয়। যদি এটি কোনও ফাইল হয় তবে এটি একটি ইউনিক্স সকেট এবং এইএকেপ্রোকি এই সকেটে সিসলোগ বিন্যাসে কথা বলবে। হ্যাপ্রোক্সিটি এমনভাবে ডিজাইন করা হয়েছে কারণ এর দায়বদ্ধতা প্রক্সি অনুরোধগুলির প্রতি, ফাইলগুলি লেখার জন্য নয়, এটি লগ ফাইলগুলি সাইস্লগে লেখার প্রতিনিধিত্ব করে। আপনি যদি নিজের মেশিনের সাথে গোলযোগ করতে না চান তবে আপনি উদাহরণস্বরূপ লগস্ট্যাশ ইনস্টল করতে পারেন এবং চালাতে পারেন: logstash -e 'input { unix { path => "/tmp/haprxoy_log.sock" } } output { stdout { } }' এবং যুক্ত করুন: log /tmp/haprxoy_log.sock এটি পরীক্ষা করার জন্য আপনার haproxy.cfg এ।


আমি "ই: প্যাকেজ লগস্ট্যাশ সনাক্ত করতে অক্ষম" পাচ্ছি। উবুন্টু থেকে লগস্ট্যাশ সরানো হয়েছিল?
user568021

@ ব্যবহারকারী 5762121 মনে হয় লগস্ট্যাশ উবুন্টুতে সরবরাহ করা হয়নি তবে ইলাস্টিক (লগস্ট্যাশ এর রক্ষণাবেক্ষণকারী) একটি উপযুক্ত উত্স সরবরাহ করে। এছাড়াও, লগস্ট্যাশ একটি জাভা সফ্টওয়্যার, তাই আপনি এটি
জেআরই

7

/etc/rsyslog.d/আপনার পছন্দ মতো পথে ফাইলটি নির্দেশ করতে আপনি হ্যাপ্রোক্সি লগ কনফিগারেশন ফাইলটি পরিবর্তন করতে পারেন। অন্যান্য বিতরণ সম্পর্কে নিশ্চিত নয়। আমার জন্য, আমি ডেবিয়ান ব্যবহার করছি। আমি /etc/rsyslog.d/49-haproxy.confইঙ্গিত করে বদলেছি /var/log/haproxy/haproxy.log,

# Create an additional socket in haproxy's chroot in order to allow logging via
# /dev/log to chroot'ed HAProxy processes
$AddUnixListenSocket /var/lib/haproxy/dev/log

# Send HAProxy messages to a dedicated logfile
if $programname startswith 'haproxy' then /var/log/haproxy/haproxy.log
&~

/etc/logrotate.d/haproxyআপনার নতুন পাতায় লগ পাথটি আপডেট করা উচিত । যাতে এটি ব্যবহার করে নতুন কনফিগার করা পথে লগফিলটি ঘোরান এবং সংকোচিত হবে gzip

তারপরে rsyslog.service পুনরায় চালু করুন।

sudo systemctl restart rsyslog.service

এখন haproxy.log.*ফাইল /var/log/haproxy/ডিরেক্টরিতে হবে।


আসল haproxy.log প্রভাবিত না করে আমি /var/log/haproxy-erferences.log এর মতো ত্রুটির জন্য পৃথক লগটি কীভাবে তৈরি করব?
খুরশিদ আলম

0

আপনি ব্যবহারকারীর হোম ডিরেক্টরিতে কনফিগার করার চেষ্টা করেছেন, হ্যাপ্রোক্সিটির ব্যবহারকারীর হোম ডিরেক্টরি অ্যাক্সেস করার অনুমতি নেই, সুতরাং কারণ সমস্যাটি।

পরিবর্তে অন্য স্থানে চেষ্টা করুন, ডিরেক্টরি তৈরি করুন /var/<directory>

log /var/<directory>/ha.log

2
আমি চেষ্টা করেছিলাম sudo touch /var/log/ha.logএবং log /var/log/ha.log local0আমার কনফিগারেশনে যুক্ত করেছি, তবে উপরের মতো একই ত্রুটি পেয়েছি connection refused
আইজিজিটি

লগ ইন আপনি শেষ পর্যন্ত স্থানীয় 0 দিচ্ছেন কেন?
KKD

1
আমি এটিকে ছেড়ে দেওয়ার চেষ্টা করেছি, কিন্তু যখন আমি আবার শুরু করি তখন ত্রুটিটি পেয়েছিলাম 'log' expects <address> and <facility> as arguments.তাই সেখানে কিছু দরকার। নির্দেশাবলী অনুসারে <facility> must be one of the 24 standard syslog facilities(যা আমি মনে করি সমস্যার অংশ হতে পারে)
আইজিজিটি
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.