مكتبة الشروحات

كيف تفصل سجلات NodeJS / Python / Ruby Selectors Passenger عن سجل الأخطاء Apache error.log؟

لفصل السجلات لتطبيقات NodeJS و Python و Ruby عند استخدام Passenger مع Apache، ستحتاج إلى تكوين Passenger لاستخدام ملفات سجلات منفصلة لكل تطبيق. يمكن تحقيق ذلك عن طريق إعداد Virtual Hosts لكل تطبيق وتحديد مسارات ملفات السجلات المخصصة.

إليك دليل خطوة بخطوة:

إنشاء Virtual Hosts منفصلة:

افتح ملف تكوين Apache (عادة ما يكون موجودًا في /etc/httpd/conf/httpd.conf على Linux أو httpd.conf في Windows). قم بإنشاء كتل VirtualHost منفصلة لكل تطبيق كما يلي:

<VirtualHost *:80>
    ServerName nodejs.example.com
    DocumentRoot /path/to/your/nodejs/app
    PassengerAppType node
    PassengerStartupFile app.js
    PassengerLogFile /var/log/nodejs/passenger.log
</VirtualHost>

<VirtualHost *:80>
    ServerName python.example.com
    DocumentRoot /path/to/your/python/app
    PassengerAppType wsgi
    PassengerStartupFile your_wsgi_file.py
    PassengerLogFile /var/log/python/passenger.log
</VirtualHost>

<VirtualHost *:80>
    ServerName ruby.example.com
    DocumentRoot /path/to/your/ruby/app
    PassengerAppType rack
    PassengerStartupFile config.ru
    PassengerLogFile /var/log/ruby/passenger.log
</VirtualHost>

استبدل /path/to/your/nodejs/app و /path/to/your/python/app و /path/to/your/ruby/app بالمسارات الفعلية لتطبيقاتك.

إنشاء دلائل السجلات:

أنشئ دلائل للسجلات:

sudo mkdir /var/log/nodejs
sudo mkdir /var/log/python
sudo mkdir /var/log/ruby

تأكد من أن الدلائل لديها الأذونات اللازمة لعملية Apache الكتابة فيها.

إعادة تشغيل Apache:

بعد إجراء هذه التغييرات، قم بإعادة تشغيل Apache لتطبيق التغييرات:

sudo systemctl restart apache2  # لأنظمة تعتمد على systemd

أو

sudo service httpd restart  # لأنظمة لا تعتمد على systemd

الآن، سيقوم Passenger بإنشاء ملفات سجلات منفصلة لكل تطبيق. ستكون ملفات السجلات في المواقع التالية:

  • /var/log/nodejs/passenger.log
  • /var/log/python/passenger.log
  • /var/log/ruby/passenger.log

ستحتوي هذه السجلات على المخرجات الخاصة بنوع التطبيق المعني (Node.js أو Python أو Ruby). ستظل ملف error.log في Apache يحتوي على الأخطاء والسجلات العامة الخاصة بـ Apache.

  • 0 أعضاء وجدوا هذه المقالة مفيدة
هل كانت المقالة مفيدة ؟