লগ রোটেশন —একাধিক লগ ফাইল ঘোরানোর প্রক্রিয়া এবং ব্যবহারের বাইরে— এমন সিস্টেমগুলির প্রশাসনকে সহজ করে যা প্রচুর সংখ্যক লগ ফাইল তৈরি করে। লগ ঘূর্ণন স্বয়ংক্রিয় ঘূর্ণন, কম্প্রেশন, অপসারণ, এবং লগ ফাইলের মেইলিং সক্ষম করে।
এজ ফর প্রাইভেট ক্লাউডে, প্রতিটি apigee
কম্পোনেন্টের কিছু প্রধান লগ ফাইল ডিফল্ট রোটেশন মেকানিজমের সাথে কনফিগার করা হয়। উদাহরণস্বরূপ, মেসেজ প্রসেসর উপাদানে, নিম্নলিখিত ফাইলগুলি লগব্যাক ব্যবহার করে একটি ডিফল্ট ঘূর্ণন প্রক্রিয়ার সাথে কনফিগার করা হয়েছে:
-
/opt/apigee/var/log/edge-message-processor/logs/system.log
-
/opt/apigee/var/log/edge-message-processor/logs/events.log
-
/opt/apigee/var/log/edge-message-processor/logs/startupruntimeerrors.log
-
/opt/apigee/var/log/edge-message-processor/logs/configurations.log
-
/opt/apigee/var/log/edge-message-processor/logs/transactions.log
অনুরূপ ফাইল অন্যান্য edge-*
উপাদানগুলির জন্য বিদ্যমান (যাদের নাম edge-
দিয়ে শুরু হয়), যেমন edge-management-server
, edge-router
, edge-postgres-server
, এবং edge-qpid-server
।
edge-*
উপাদানগুলির প্রতিটি একটি অতিরিক্ত লগ ফাইল তৈরি করে যা সংশ্লিষ্ট কম্পোনেন্টের কনসোলের একটি পুনঃনির্দেশিত আউটপুট। মেসেজ প্রসেসর কম্পোনেন্টের ক্ষেত্রে, এই ফাইলটিকে /opt/apigee/var/log/edge-message-processor/edge-message-processor.log
বলা হয়। অন্যান্য edge-*
উপাদানগুলি একটি অনুরূপ ফাইল তৈরি করে। এই ফাইলগুলির ঘূর্ণন লগব্যাক লাইব্রেরি দ্বারা করা হয় না, বরং logrotate
এবং crontab
ব্যবহার করে।আপনি শুরু করার আগে
- আপনি যদি
logrotate
কনফিগারেশনের সাথে পরিচিত না হন তবে logrotate ম্যানুয়ালটি পড়ুন। - আপনি যদি
crontab
কনফিগারেশনের সাথে পরিচিত না হন, তাহলে crontab ম্যানুয়ালটি পড়ুন।
লগ ঘূর্ণন সক্ষম করুন
প্রাইভেট ক্লাউড সংস্করণ 4.52 এর জন্য এজ দিয়ে শুরু করে, আপনি যখন একটি edge-*
উপাদান ইনস্টল করেন, তখন এই লগটি ঘোরানোর জন্য একটি crontab
এন্ট্রি স্বয়ংক্রিয়ভাবে apigee
ব্যবহারকারীর crontab
তৈরি হয়। এই ক্রন কাজটি ডিফল্টরূপে প্রতি ঘন্টায় চলে এবং লগ ঘোরাতে logrotate
ইউটিলিটি ব্যবহার করে। যদি একই নোডে একাধিক edge-*
উপাদান ইনস্টল করা থাকে (উদাহরণস্বরূপ, একটি অল-ইন-ওয়ান ইনস্টলেশনে, বা যদি রাউটার এবং মেসেজ-প্রসেসর একটি নোডে ইনস্টল করা থাকে), প্রতিটি উপাদানের ঘূর্ণনের জন্য নিজস্ব ক্রন এন্ট্রি থাকবে তার নিজ নিজ লগ.
নোট:
- যদি একটি
edge-*
উপাদান ইনস্টল করার সময়, আপনি স্বয়ংক্রিয়ভাবে একটিlogrotate
cronjob সেট আপ করতে না চান, তাহলে আপনার নীরব কনফিগারেশন ফাইলে ফ্ল্যাগ "ENABLE_LOGROTATE=n" সেট করুন যা আপনি ইনস্টলেশনের জন্য ব্যবহার করেন৷ ইনস্টলেশনের সময় ক্রন কাজ সেট না থাকলে, আপনি একটি উপাদানেরlogrotate
ক্রন সক্ষম করার পদক্ষেপগুলি অনুসরণ করে পরে এটি সেট আপ করতে পারেন। - কম্পোনেন্ট
edge-router
জন্য, একটি অতিরিক্তlogrotate
ক্রন কাজ ডিফল্টরূপে কনফিগার করা হয়। এই ক্রনটি Nginx দ্বারা উত্পন্ন অ্যাক্সেস এবং ত্রুটি লগগুলিকে ঘোরায়।
নিম্নলিখিত উদাহরণগুলি বিভিন্ন কনফিগারেশন এবং প্রশাসনিক ক্রিয়াকলাপগুলিকে চিত্রিত করে যা আপনি সম্পাদন করতে পারেন।
একটি নোডে ক্রন এন্ট্রি দেখুন
sudo crontab -u apigee -l
একটি কম্পোনেন্টের logrotate
ক্রন এন্ট্রি দেখুন
$APIGEE_ROOT/apigee-service/bin/apigee-service <component-name> logrotate -s
উদাহরণস্বরূপ, এজ-মেসেজ-প্রসেসরের logrotate
ক্রন দেখতে, চালান:
$APIGEE_ROOT/apigee-service/bin/apigee-service edge-message-processor logrotate -s
একটি উপাদানের logrotate
কনফিগারেশন দেখুন
একটি কম্পোনেন্টের logrotate
কনফিগারেশন $APIGEE_ROOT/<component>/logrotate/logrotate.conf
ফাইলে পাওয়া যাবে। উদাহরণস্বরূপ, এজ-মেসেজ-প্রসেসরের ক্ষেত্রে, নোডের logrotate
কনফিগারেশন $APIGEE_ROOT/edge-message-processor/logrotate/logrotate.conf
এ পাওয়া যাবে।
একটি উপাদানের logrotate
ক্রন সক্ষম করুন
$APIGEE_ROOT/apigee-service/bin/apigee-service <component-name> logrotate -e
উদাহরণস্বরূপ, এজ-মেসেজ-প্রসেসরের logrotate
ক্রন সক্ষম করতে, চালান:
$APIGEE_ROOT/apigee-service/bin/apigee-service edge-message-processor logrotate -e
একটি উপাদানের logrotate
ক্রন নিষ্ক্রিয় করুন
$APIGEE_ROOT/apigee-service/bin/apigee-service <component-name> logrotate -d
উদাহরণস্বরূপ, এজ-মেসেজ-প্রসেসরের logrotate
ক্রন নিষ্ক্রিয় করতে, চালান:
$APIGEE_ROOT/apigee-service/bin/apigee-service edge-message-processor logrotate -d
একটি নির্দিষ্ট logrotate
কমান্ডের ক্রন সময়সূচী পরিবর্তন করুন
নোডে যেখানে আপনি logrotate
ক্রন সময়সূচী পরিবর্তন করতে চান, সংশ্লিষ্ট কম্পোনেন্টের কনফিগারেশন ওভাররাইড ফাইলটি খুলুন। edge-*
কম্পোনেন্টের কনফিগারেশন ওভাররাইড ফাইলগুলি নীচের টেবিলে তালিকাভুক্ত করা হয়েছে:
কম্পোনেন্ট | কনফিগারেশন ওভাররাইড ফাইল |
---|---|
edge-message-processor | $APIGEE_ROOT/customer/application/message-processor.properties |
edge-management-server | $APIGEE_ROOT/customer/application/management-server.properties |
edge-router | $APIGEE_ROOT/customer/application/router.properties |
edge-postgres-server | $APIGEE_ROOT/customer/application/postgres-server.properties |
edge-qpid-server | $APIGEE_ROOT/customer/application/qpid-serverproperties |
উপযুক্ত ওভাররাইড ফাইলটি খুলুন এবং নিম্নলিখিত কনফিগারেশন ওভাররাইড সেট করুন। নীচের উদাহরণটি প্রতি ঘন্টার 0 তম মিনিটে চালানোর জন্য ক্রোন কাজটিকে ওভাররাইড করে৷
conf_logrotate_cron_duration=0 * * * *
কনফিগারেশন ওভাররাইড সেট করতে:
- নিশ্চিত করুন যে ফাইলটি
apigee
ব্যবহারকারী দ্বারা পাঠযোগ্য। - উপাদানটিতে নতুন ক্রন সময়সূচী প্রয়োগ করুন:
$APIGEE_ROOT/apigee-service/bin/apigee-service <component-name> logrotate -e
উদাহরণস্বরূপ, এজ-মেসেজ-প্রসেসরের logrotate
নতুন ক্রন সময়সূচী প্রয়োগ করতে, লিখুন:
$APIGEE_ROOT/apigee-service/bin/apigee-service edge-message-processor logrotate -e
পরিবর্তনগুলি প্রয়োগ করা হয়েছে তা যাচাই করতে, হয় ক্রন এন্ট্রি পরীক্ষা করুন বা উপাদানের logrotate
ক্রন এন্ট্রি দেখুন৷
অতিরিক্ত logrotate
কনফিগারেশন
ক্রোন সময়সূচী পরিবর্তন করার জন্য উপরের বিভাগে তালিকাভুক্ত পদক্ষেপের অনুরূপ, আপনি অতিরিক্ত কনফিগারেশনও পরিবর্তন করতে পারেন। নীচের টেবিলটি এই কনফিগারেশনগুলি বর্ণনা করে:
কনফিগারেশন | বর্ণনা |
---|---|
conf_logrotate_bin_location | লগরোটেট বাইনারি অবস্থান। ডিফল্ট: /usr/sbin/logrotate |
conf_logrotate_status_file | স্ট্যাটাস ফাইল logrotate-এর রানটাইম স্ট্যাটাস ক্যাপচার করে - শোতে apigee ব্যবহারকারীর জন্য রিড/রাইট করার অনুমতি আছে। ডিফল্ট: $APIGEE_ROOT/var/run/<component>/logrotate.status |
conf_logrotate_logs | যা ঘোরানো লগ. ওয়াইল্ডকার্ড অন্তর্ভুক্ত করতে পারে। ডিফল্ট: $APIGEE_ROOT/var/log/<component>/<component>.log |
conf_logrotate_rotate | ঘূর্ণন গণনা। ডিফল্ট: "5" |
conf_logrotate_compress | ঘোরানো ফাইল সংকুচিত করা হবে কিনা। ডিফল্ট: "সংকোচন" |
conf_logrotate_compress_type | কম্প্রেশন প্রকার। ডিফল্ট: "delaycompress"। সর্বশেষ ঘূর্ণিত ফাইলের সংকোচন পরবর্তী লগরোটেট চক্রে স্থগিত করে। |
conf_logrotate_size | ঘূর্ণন জন্য লগ আকার সীমা. ডিফল্ট: "10M" |
আপনার নিজস্ব লগ রোটেশন মেকানিজম এবং ক্রন ব্যবহার করুন
<component>.log ঘোরানোর জন্য আপনার প্রয়োজনীয়তা Apigee দ্বারা প্রদত্ত কনফিগারেশন দ্বারা পূরণ না হলে, আপনি লগরোটেট বা অন্যদের মতো টুল ব্যবহার করে লগ রোটেশনের আপনার নিজস্ব পদ্ধতি ব্যবহার করেন। উদাহরণস্বরূপ, Apigee দ্বারা প্রদত্ত কনফিগারেশনগুলি আপনাকে সাইজ অনুসারে লগগুলি ঘোরাতে দেয় তবে আপনি তারিখ/সময় বা অন্যান্য কারণের উপর ভিত্তি করে লগগুলি ঘোরাতে চান৷ এই ধরনের ক্ষেত্রে, আপনার Apigee দ্বারা প্রদত্ত logrotate
cron নিষ্ক্রিয় করা উচিত এবং প্রয়োজন অনুসারে আপনার নিজস্ব ক্রোন কাজ সেট আপ করা উচিত।
আপনি যদি Apigee এর লগ রোটেশন ক্রন এন্ট্রি উল্লেখ করতে চান, তাহলে আপনি এটি $APIGEE_ROOT/ /logrotate/logrotate.cron
ফাইলে খুঁজে পেতে পারেন$APIGEE_ROOT/ /logrotate/logrotate.cron
। উদাহরণস্বরূপ, edge-message-processor
এর ক্ষেত্রে, এই ফাইলটিকে $APIGEE_ROOT/edge-message-processor/logrotate/logrotate.cron
বলা হয়। এই ফাইলটিতে ক্রন এন্ট্রি এবং লগ রোটেশনের জন্য Apigee দ্বারা নির্বাহিত কমান্ড উভয়ই অন্তর্ভুক্ত রয়েছে। আপনি যদি logrotate
ব্যবহার করতে চান কিন্তু Apigee এর কনফিগারেশন ব্যবহার করতে না চান, তাহলে আপনি আপনার নিজস্ব logrotate
কনফিগারেশন ফাইল তৈরি করতে পারেন এবং লগ রোটেশন সঞ্চালনের জন্য অনুরূপ logrotate
কমান্ড ব্যবহার করতে পারেন।