অ্যাক্সেস.লগের পরিবর্তে অ্যাক্সেস.লগ ১ এ লিনাক্স, লোগ্রোটেট ব্যর্থ?


20

আমার একটি এনগিনেক্স উদাহরণ রয়েছে যা /var/log/nginx/access.log এ অ্যাক্সেস এবং /var/log/nginx/erferences.log এ ত্রুটিগুলি লগ করতে সেট করা আছে তবে লগ্রোটেট প্রতি সপ্তাহে চলার সাথে সাথে ফাইলটি এতে সরানো যায় * .log.1 এবং নতুন *। লগ ফাইলটি তৈরি হয়ে যায়, তবে এনজিএনএক্স নতুন। লগ ফাইলের পরিবর্তে লগ 1 ফাইলে লগইন করতে থাকে (এবং কিছুই জিজেপ হয় না)। আমি প্রথমবার এটি লক্ষ্য করলাম, লগটি ঘোরার 3 সপ্তাহ হয়ে গেছে এবং লগটি বিশাল আকার ধারণ করছে। kill -HUP `cat /run/nginx.pid`তৈরি এনগিনেক্স চালানো আবার সঠিক জায়গায় লগইন শুরু করে, তবে পরের সপ্তাহে আবার সমস্যাটি শুরু হয়েছিল।

হতাশার আরও গুরুত্বপূর্ণ কারণটি হ'ল আমার কাছে লসগ্লিতে আরএসস্লগের মাধ্যমে আপলোড করার জন্য লগগুলি সেট করা আছে এবং যখন এনজিএনএক্স আমার কাছে আরএসস্লগ পোলিং করা ফাইলটিতে লগিং বন্ধ করে দেয়, তখন জিনিসগুলি আপলোড করা বন্ধ করে দেয় এবং আমি কোনও সতর্কতা পাই না।

আমার সন্দেহ হয় যে এনজিনেক্স পুনরায় চালু করা বা কনফিগারটি পুনরায় লোড করার সাথে এর কিছু করার আছে কারণ আমি কোনও কনফিগার পরিবর্তন না করে এবং কনফিগারটিকে এমনভাবে পুনরায় লোড না করা পর্যন্ত শুরু করা হয়নি যা আমার মনে হয়েছিল যে স্বাভাবিক। আমি দৌড়ানোর চেষ্টা করেছি kill -USR1 `cat /run/nginx.pid`কিন্তু ফাইলগুলি চালানোর আগ পর্যন্ত ভুল জায়গায় লগইন করা অবিরত ছিল kill -HUP `cat /run/nginx.pid`যা আমি ইতিমধ্যে জানি যে সমস্যার সমাধান করে না।

কি চলছে এর কোন ধারণা? আমি স্বীকার করি আমি লোগ্রোটেট বা এনজিএনএক্স প্রশাসনের কোনও বিশেষজ্ঞ নই, তবে আমার গুগলস আমাকে এই ব্যর্থ করেছে।

এখানে আমার এনজিনেক্স লোগ্রোটেট স্ক্রিপ্ট, এবং আপনি দেখতে চাইলে অন্য কিছু আছে কিনা তা আমাকে জানান। আউটপুট অবস্থানগুলি নির্ধারণ করা ব্যতীত লগিং সম্পর্কিত ক্ষেত্রে nginx.conf এর বিশেষ কিছু নেই।

/var/log/nginx/*.log {
        weekly
        missingok
        rotate 52
        compress
        delaycompress
        notifempty
        create 0640 www-data adm
        sharedscripts
        prerotate
                if [ -d /etc/logrotate.d/httpd-prerotate ]; then \
                        run-parts /etc/logrotate.d/httpd-prerotate; \
                fi \
        endscript
        postrotate
                [ -s /run/nginx.pid ] && kill -USR1 `cat /run/nginx.pid`
        endscript
}

সম্পাদনা: আমি মনে করি আমি সমস্যাটি পেয়েছি। ডিবাগ মোডে লোগ্রোটেট চালানোর আউটপুটটি এখানে:

$ sudo logrotate --force -d /etc/logrotate.d/nginx
reading config file /etc/logrotate.d/nginx

Handling 1 logs

rotating pattern: /var/log/nginx/*.log  forced from command line (52 rotations)
empty log files are not rotated, old logs are removed
considering log /var/log/nginx/access.log
  log needs rotating
considering log /var/log/nginx/error.log
  log needs rotating
rotating log /var/log/nginx/access.log, log->rotateCount is 52
dateext suffix '-20141023'
glob pattern '-[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]'
previous log /var/log/nginx/access.log.1 does not exist
renaming /var/log/nginx/access.log.52.gz to /var/log/nginx/access.log.53.gz (rotatecount 52, logstart 1, i 52), 
renaming /var/log/nginx/access.log.51.gz to /var/log/nginx/access.log.52.gz (rotatecount 52, logstart 1, i 51), 
renaming /var/log/nginx/access.log.50.gz to /var/log/nginx/access.log.51.gz (rotatecount 52, logstart 1, i 50), 
renaming /var/log/nginx/access.log.49.gz to /var/log/nginx/access.log.50.gz (rotatecount 52, logstart 1, i 49), 
renaming /var/log/nginx/access.log.48.gz to /var/log/nginx/access.log.49.gz (rotatecount 52, logstart 1, i 48), 
renaming /var/log/nginx/access.log.47.gz to /var/log/nginx/access.log.48.gz (rotatecount 52, logstart 1, i 47), 
renaming /var/log/nginx/access.log.46.gz to /var/log/nginx/access.log.47.gz (rotatecount 52, logstart 1, i 46), 
renaming /var/log/nginx/access.log.45.gz to /var/log/nginx/access.log.46.gz (rotatecount 52, logstart 1, i 45), 
renaming /var/log/nginx/access.log.44.gz to /var/log/nginx/access.log.45.gz (rotatecount 52, logstart 1, i 44), 
renaming /var/log/nginx/access.log.43.gz to /var/log/nginx/access.log.44.gz (rotatecount 52, logstart 1, i 43), 
renaming /var/log/nginx/access.log.42.gz to /var/log/nginx/access.log.43.gz (rotatecount 52, logstart 1, i 42), 
renaming /var/log/nginx/access.log.41.gz to /var/log/nginx/access.log.42.gz (rotatecount 52, logstart 1, i 41), 
renaming /var/log/nginx/access.log.40.gz to /var/log/nginx/access.log.41.gz (rotatecount 52, logstart 1, i 40), 
renaming /var/log/nginx/access.log.39.gz to /var/log/nginx/access.log.40.gz (rotatecount 52, logstart 1, i 39), 
renaming /var/log/nginx/access.log.38.gz to /var/log/nginx/access.log.39.gz (rotatecount 52, logstart 1, i 38), 
renaming /var/log/nginx/access.log.37.gz to /var/log/nginx/access.log.38.gz (rotatecount 52, logstart 1, i 37), 
renaming /var/log/nginx/access.log.36.gz to /var/log/nginx/access.log.37.gz (rotatecount 52, logstart 1, i 36), 
renaming /var/log/nginx/access.log.35.gz to /var/log/nginx/access.log.36.gz (rotatecount 52, logstart 1, i 35), 
renaming /var/log/nginx/access.log.34.gz to /var/log/nginx/access.log.35.gz (rotatecount 52, logstart 1, i 34), 
renaming /var/log/nginx/access.log.33.gz to /var/log/nginx/access.log.34.gz (rotatecount 52, logstart 1, i 33), 
renaming /var/log/nginx/access.log.32.gz to /var/log/nginx/access.log.33.gz (rotatecount 52, logstart 1, i 32), 
renaming /var/log/nginx/access.log.31.gz to /var/log/nginx/access.log.32.gz (rotatecount 52, logstart 1, i 31), 
renaming /var/log/nginx/access.log.30.gz to /var/log/nginx/access.log.31.gz (rotatecount 52, logstart 1, i 30), 
renaming /var/log/nginx/access.log.29.gz to /var/log/nginx/access.log.30.gz (rotatecount 52, logstart 1, i 29), 
renaming /var/log/nginx/access.log.28.gz to /var/log/nginx/access.log.29.gz (rotatecount 52, logstart 1, i 28), 
renaming /var/log/nginx/access.log.27.gz to /var/log/nginx/access.log.28.gz (rotatecount 52, logstart 1, i 27), 
renaming /var/log/nginx/access.log.26.gz to /var/log/nginx/access.log.27.gz (rotatecount 52, logstart 1, i 26), 
renaming /var/log/nginx/access.log.25.gz to /var/log/nginx/access.log.26.gz (rotatecount 52, logstart 1, i 25), 
renaming /var/log/nginx/access.log.24.gz to /var/log/nginx/access.log.25.gz (rotatecount 52, logstart 1, i 24), 
renaming /var/log/nginx/access.log.23.gz to /var/log/nginx/access.log.24.gz (rotatecount 52, logstart 1, i 23), 
renaming /var/log/nginx/access.log.22.gz to /var/log/nginx/access.log.23.gz (rotatecount 52, logstart 1, i 22), 
renaming /var/log/nginx/access.log.21.gz to /var/log/nginx/access.log.22.gz (rotatecount 52, logstart 1, i 21), 
renaming /var/log/nginx/access.log.20.gz to /var/log/nginx/access.log.21.gz (rotatecount 52, logstart 1, i 20), 
renaming /var/log/nginx/access.log.19.gz to /var/log/nginx/access.log.20.gz (rotatecount 52, logstart 1, i 19), 
renaming /var/log/nginx/access.log.18.gz to /var/log/nginx/access.log.19.gz (rotatecount 52, logstart 1, i 18), 
renaming /var/log/nginx/access.log.17.gz to /var/log/nginx/access.log.18.gz (rotatecount 52, logstart 1, i 17), 
renaming /var/log/nginx/access.log.16.gz to /var/log/nginx/access.log.17.gz (rotatecount 52, logstart 1, i 16), 
renaming /var/log/nginx/access.log.15.gz to /var/log/nginx/access.log.16.gz (rotatecount 52, logstart 1, i 15), 
renaming /var/log/nginx/access.log.14.gz to /var/log/nginx/access.log.15.gz (rotatecount 52, logstart 1, i 14), 
renaming /var/log/nginx/access.log.13.gz to /var/log/nginx/access.log.14.gz (rotatecount 52, logstart 1, i 13), 
renaming /var/log/nginx/access.log.12.gz to /var/log/nginx/access.log.13.gz (rotatecount 52, logstart 1, i 12), 
renaming /var/log/nginx/access.log.11.gz to /var/log/nginx/access.log.12.gz (rotatecount 52, logstart 1, i 11), 
renaming /var/log/nginx/access.log.10.gz to /var/log/nginx/access.log.11.gz (rotatecount 52, logstart 1, i 10), 
renaming /var/log/nginx/access.log.9.gz to /var/log/nginx/access.log.10.gz (rotatecount 52, logstart 1, i 9), 
renaming /var/log/nginx/access.log.8.gz to /var/log/nginx/access.log.9.gz (rotatecount 52, logstart 1, i 8), 
renaming /var/log/nginx/access.log.7.gz to /var/log/nginx/access.log.8.gz (rotatecount 52, logstart 1, i 7), 
renaming /var/log/nginx/access.log.6.gz to /var/log/nginx/access.log.7.gz (rotatecount 52, logstart 1, i 6), 
renaming /var/log/nginx/access.log.5.gz to /var/log/nginx/access.log.6.gz (rotatecount 52, logstart 1, i 5), 
renaming /var/log/nginx/access.log.4.gz to /var/log/nginx/access.log.5.gz (rotatecount 52, logstart 1, i 4), 
renaming /var/log/nginx/access.log.3.gz to /var/log/nginx/access.log.4.gz (rotatecount 52, logstart 1, i 3), 
renaming /var/log/nginx/access.log.2.gz to /var/log/nginx/access.log.3.gz (rotatecount 52, logstart 1, i 2), 
renaming /var/log/nginx/access.log.1.gz to /var/log/nginx/access.log.2.gz (rotatecount 52, logstart 1, i 1), 
renaming /var/log/nginx/access.log.0.gz to /var/log/nginx/access.log.1.gz (rotatecount 52, logstart 1, i 0), 
rotating log /var/log/nginx/error.log, log->rotateCount is 52
dateext suffix '-20141023'
glob pattern '-[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]'
previous log /var/log/nginx/error.log.1 does not exist
renaming /var/log/nginx/error.log.52.gz to /var/log/nginx/error.log.53.gz (rotatecount 52, logstart 1, i 52), 
renaming /var/log/nginx/error.log.51.gz to /var/log/nginx/error.log.52.gz (rotatecount 52, logstart 1, i 51), 
renaming /var/log/nginx/error.log.50.gz to /var/log/nginx/error.log.51.gz (rotatecount 52, logstart 1, i 50), 
renaming /var/log/nginx/error.log.49.gz to /var/log/nginx/error.log.50.gz (rotatecount 52, logstart 1, i 49), 
renaming /var/log/nginx/error.log.48.gz to /var/log/nginx/error.log.49.gz (rotatecount 52, logstart 1, i 48), 
renaming /var/log/nginx/error.log.47.gz to /var/log/nginx/error.log.48.gz (rotatecount 52, logstart 1, i 47), 
renaming /var/log/nginx/error.log.46.gz to /var/log/nginx/error.log.47.gz (rotatecount 52, logstart 1, i 46), 
renaming /var/log/nginx/error.log.45.gz to /var/log/nginx/error.log.46.gz (rotatecount 52, logstart 1, i 45), 
renaming /var/log/nginx/error.log.44.gz to /var/log/nginx/error.log.45.gz (rotatecount 52, logstart 1, i 44), 
renaming /var/log/nginx/error.log.43.gz to /var/log/nginx/error.log.44.gz (rotatecount 52, logstart 1, i 43), 
renaming /var/log/nginx/error.log.42.gz to /var/log/nginx/error.log.43.gz (rotatecount 52, logstart 1, i 42), 
renaming /var/log/nginx/error.log.41.gz to /var/log/nginx/error.log.42.gz (rotatecount 52, logstart 1, i 41), 
renaming /var/log/nginx/error.log.40.gz to /var/log/nginx/error.log.41.gz (rotatecount 52, logstart 1, i 40), 
renaming /var/log/nginx/error.log.39.gz to /var/log/nginx/error.log.40.gz (rotatecount 52, logstart 1, i 39), 
renaming /var/log/nginx/error.log.38.gz to /var/log/nginx/error.log.39.gz (rotatecount 52, logstart 1, i 38), 
renaming /var/log/nginx/error.log.37.gz to /var/log/nginx/error.log.38.gz (rotatecount 52, logstart 1, i 37), 
renaming /var/log/nginx/error.log.36.gz to /var/log/nginx/error.log.37.gz (rotatecount 52, logstart 1, i 36), 
renaming /var/log/nginx/error.log.35.gz to /var/log/nginx/error.log.36.gz (rotatecount 52, logstart 1, i 35), 
renaming /var/log/nginx/error.log.34.gz to /var/log/nginx/error.log.35.gz (rotatecount 52, logstart 1, i 34), 
renaming /var/log/nginx/error.log.33.gz to /var/log/nginx/error.log.34.gz (rotatecount 52, logstart 1, i 33), 
renaming /var/log/nginx/error.log.32.gz to /var/log/nginx/error.log.33.gz (rotatecount 52, logstart 1, i 32), 
renaming /var/log/nginx/error.log.31.gz to /var/log/nginx/error.log.32.gz (rotatecount 52, logstart 1, i 31), 
renaming /var/log/nginx/error.log.30.gz to /var/log/nginx/error.log.31.gz (rotatecount 52, logstart 1, i 30), 
renaming /var/log/nginx/error.log.29.gz to /var/log/nginx/error.log.30.gz (rotatecount 52, logstart 1, i 29), 
renaming /var/log/nginx/error.log.28.gz to /var/log/nginx/error.log.29.gz (rotatecount 52, logstart 1, i 28), 
renaming /var/log/nginx/error.log.27.gz to /var/log/nginx/error.log.28.gz (rotatecount 52, logstart 1, i 27), 
renaming /var/log/nginx/error.log.26.gz to /var/log/nginx/error.log.27.gz (rotatecount 52, logstart 1, i 26), 
renaming /var/log/nginx/error.log.25.gz to /var/log/nginx/error.log.26.gz (rotatecount 52, logstart 1, i 25), 
renaming /var/log/nginx/error.log.24.gz to /var/log/nginx/error.log.25.gz (rotatecount 52, logstart 1, i 24), 
renaming /var/log/nginx/error.log.23.gz to /var/log/nginx/error.log.24.gz (rotatecount 52, logstart 1, i 23), 
renaming /var/log/nginx/error.log.22.gz to /var/log/nginx/error.log.23.gz (rotatecount 52, logstart 1, i 22), 
renaming /var/log/nginx/error.log.21.gz to /var/log/nginx/error.log.22.gz (rotatecount 52, logstart 1, i 21), 
renaming /var/log/nginx/error.log.20.gz to /var/log/nginx/error.log.21.gz (rotatecount 52, logstart 1, i 20), 
renaming /var/log/nginx/error.log.19.gz to /var/log/nginx/error.log.20.gz (rotatecount 52, logstart 1, i 19), 
renaming /var/log/nginx/error.log.18.gz to /var/log/nginx/error.log.19.gz (rotatecount 52, logstart 1, i 18), 
renaming /var/log/nginx/error.log.17.gz to /var/log/nginx/error.log.18.gz (rotatecount 52, logstart 1, i 17), 
renaming /var/log/nginx/error.log.16.gz to /var/log/nginx/error.log.17.gz (rotatecount 52, logstart 1, i 16), 
renaming /var/log/nginx/error.log.15.gz to /var/log/nginx/error.log.16.gz (rotatecount 52, logstart 1, i 15), 
renaming /var/log/nginx/error.log.14.gz to /var/log/nginx/error.log.15.gz (rotatecount 52, logstart 1, i 14), 
renaming /var/log/nginx/error.log.13.gz to /var/log/nginx/error.log.14.gz (rotatecount 52, logstart 1, i 13), 
renaming /var/log/nginx/error.log.12.gz to /var/log/nginx/error.log.13.gz (rotatecount 52, logstart 1, i 12), 
renaming /var/log/nginx/error.log.11.gz to /var/log/nginx/error.log.12.gz (rotatecount 52, logstart 1, i 11), 
renaming /var/log/nginx/error.log.10.gz to /var/log/nginx/error.log.11.gz (rotatecount 52, logstart 1, i 10), 
renaming /var/log/nginx/error.log.9.gz to /var/log/nginx/error.log.10.gz (rotatecount 52, logstart 1, i 9), 
renaming /var/log/nginx/error.log.8.gz to /var/log/nginx/error.log.9.gz (rotatecount 52, logstart 1, i 8), 
renaming /var/log/nginx/error.log.7.gz to /var/log/nginx/error.log.8.gz (rotatecount 52, logstart 1, i 7), 
renaming /var/log/nginx/error.log.6.gz to /var/log/nginx/error.log.7.gz (rotatecount 52, logstart 1, i 6), 
renaming /var/log/nginx/error.log.5.gz to /var/log/nginx/error.log.6.gz (rotatecount 52, logstart 1, i 5), 
renaming /var/log/nginx/error.log.4.gz to /var/log/nginx/error.log.5.gz (rotatecount 52, logstart 1, i 4), 
renaming /var/log/nginx/error.log.3.gz to /var/log/nginx/error.log.4.gz (rotatecount 52, logstart 1, i 3), 
renaming /var/log/nginx/error.log.2.gz to /var/log/nginx/error.log.3.gz (rotatecount 52, logstart 1, i 2), 
renaming /var/log/nginx/error.log.1.gz to /var/log/nginx/error.log.2.gz (rotatecount 52, logstart 1, i 1), 
renaming /var/log/nginx/error.log.0.gz to /var/log/nginx/error.log.1.gz (rotatecount 52, logstart 1, i 0), 
running prerotate script
running script with arg /var/log/nginx/*.log : "
        if [ -d /etc/logrotate.d/httpd-prerotate ]; then \
            run-parts /etc/logrotate.d/httpd-prerotate; \
        fi \
"
renaming /var/log/nginx/access.log to /var/log/nginx/access.log.1
creating new /var/log/nginx/access.log mode = 0640 uid = 33 gid = 4
renaming /var/log/nginx/error.log to /var/log/nginx/error.log.1
creating new /var/log/nginx/error.log mode = 0640 uid = 33 gid = 4
running postrotate script
running script with arg /var/log/nginx/*.log : "
        [ -s /run/nginx.pid ] && kill -USR1 `cat /run/nginx.pid`
"
removing old log /var/log/nginx/access.log.53.gz
error: error opening /var/log/nginx/access.log.53.gz: No such file or directory

তবে কেবলমাত্র * .log.8.gz পর্যন্ত সংরক্ষণাগার রয়েছে, সুতরাং লোগ্রোটেট ব্যর্থ হওয়ার সাথে সাথে ব্যর্থ হওয়ার চেষ্টা করে /var/log/nginx/access.log.53.gz। কেন পৃথিবীতে এটি করার চেষ্টা করা হচ্ছে? আমি মনে করি এগুলি পূরণ করার জন্য আমার জাল ফাইলগুলি স্পর্শ করা দরকার? এটি কোনওভাবে ভুল বলে মনে হচ্ছে।


এই লোগ্রোটেট কনফার্মটি প্রতিটি রাতে weeklyফ্রিকোয়েন্সি সহ চলবে এমন কোনও কারণ নেই । আপনার কাছে এনজিনেক্সের সাথে অন্য কোনও গোলযোগ রয়েছে কিনা তা পরীক্ষা করে দেখুন।
জাভিয়ার লুকাস

@ জাভিয়ার আহ, এটি সাপ্তাহিক চালানোর জন্য প্রস্তুত, তবে আমি নিজেকে বিভ্রান্ত করেছিলাম। আমি গতকাল এটি সংশোধন করার চেষ্টা করেছি, তবে সমস্যাটি রাতারাতি উঠে এসেছিল। আমি মনে করি যে পরিবর্তনটি করার জন্য লগটি ঘোরানোর জন্য সেট করার আগের দিনটি আমি বেছে নিয়েছিলাম, এবং এটি গত রাতে পরিবর্তিত হওয়ায়, আমি ধরে নিয়েছি (মনোযোগ না দিয়ে) যে এটি রাত্রে ঘোরে যাবে। আমি আমার পোস্টটি আপডেট হয়েছি যা ঘটছে তা আরও সঠিকভাবে প্রতিফলিত করতে।
বেন টোরেল

আমার কাছে ত্রুটির মতো মনে হচ্ছে বা আপনার স্ট্যাটাস ফাইলটি দূষিত হয়েছে ( /var/lib/logrotate/status)। এটি সরানো এবং পুনরায় চেষ্টা করা এটিকে ঠিক করতে পারে, যদি না হয় তবে টিকিট খুলুন।
জাভিয়ের লুকাস 16

উত্তর:


38

বাহ, অবশেষে উত্তরটি দীর্ঘ সময় খননের পরে পেলাম। সমস্যা, আমার ক্ষেত্রে লোগ্রোটেট ব্যর্থ হচ্ছিল না। ত্রুটি বার্তাটি ভাল, এবং লোগ্রোটেটটি থামায় না। সমস্যাটি হ'ল এনগিনেক্স লগ ফাইলটিতে ফাইলটি হ্যান্ডেলটি -USR1সিগন্যাল পাওয়ার পরে ছেড়ে দিচ্ছে না kill। দীর্ঘ গল্প সংক্ষিপ্ত, লগ ফাইলগুলি পুনরায় লোড না করার কারণটি হ'ল /var/log/nginxফোল্ডারটি এনজিনেক্স কর্মী প্রক্রিয়াগুলির মতো একই ব্যবহারকারীর মালিকানাধীন ছিল না (www- ডেটার মালিকানাধীন, ওয়েবের অধীনে চলছে)। কীভাবে এটি পরিবর্তিত হয়েছে (আমার সম্ভবত এই সার্ভারটি পুনরায় পুনরায় তৈরি করা হয়েছিল) কোনও ধারণা নেই, তবে এনজিঙ্ক্স কর্মী প্রক্রিয়া হিসাবে একই ব্যবহারকারীর মালিকানাধীন ফোল্ডারটি পরিবর্তন করা (এবং ওয়েব হিসাবে নতুন লগগুলি তৈরি করার জন্য লোগ্রোটেট ফাইল ফিক্স করা) সমস্যাটি স্থির করেছে।


কিছু সময়ের জন্য (সম্ভবত সর্বদা!) এই সমস্যা ছিল - এবং ভেবেছিল যে লোগ্রোটেট কনফিগারেশনের মধ্যে অপরাধীকে অবশ্যই কোথাও কবর দেওয়া উচিত। সাবাশ!
রিং Ø

3
সম্ভবত উল্লেখযোগ্য মূল্য: অনুমতিগুলি ঠিক করার পরে করবেন service nginx reload। এরপরে আমার লগগুলি এসেছিল .logএবং না.log.1
স্যুপডিভার

নিশ্চিত করুন যে কেবল আপনার ফাইলই নয় access.logএবং error.logঅ্যাক্সেসের অনুমতিও রয়েছে /var/log/nginxডিরেক্টরিতেও এক্সিকিউট করার অনুমতি থাকা উচিত।
যুবরাজ লোগানাথন

2

আমার উবুন্টু ১৪.০৪-তে একই সমস্যা রয়েছে, তবে আপনার উত্তরটি পড়ার পরে আমি পরীক্ষা করেছিলাম যে আমার এনগিনেক্সটি www-ডেটার অধীনে চলছে, যিনি ফোল্ডারের মালিক, তাই ...

যাইহোক, আমি এই বাগটি পেয়েছি , যা /etc/logrotate.d/nginx এ পোস্ট্রোটেট বিভাগের ভুলটির দিকে নির্দেশ করে।

এটি ঠিক করার জন্য, আপনি মন্তব্য করতে পারেন

invoke-rc.d nginx rotate >/dev/null 2>&1

এবং পরিবর্তে নিম্নলিখিত বিকল্পগুলির মধ্যে (সেই বাগে মন্তব্যগুলি থেকে) ব্যবহার করুন:

  • স্টার্ট-স্টপ-ডেমন - স্টপ - সিগন্যাল ইউএসআর 1 - কোয়েট - পিডফিল / রুন / জংিনেক্স.পিড - নাম এনগিনেক্স
  • nginx -s পুনরায় লোড
  • পরিষেবা এনজিনেক্স পুনরায় লোড করুন </ dev / null 2> & 1

-1

এই সমস্যার আর একটি কারণ ডিস্ক ভরাট হতে পারে ।

দ্রষ্টব্য: এমনকি অ্যাক্সেস লগটি হঠাৎ পূরণের সাথে এটি ঘটতে পারে! ডস হতে পারে?

এই নকল করা জন্য আপনাকে আকস্মিক অনেক অনুরোধ, একবার সঙ্গে একটি সব আপ আপনার অ্যাক্সেস লগ ভরাট থাকতে পারে logrotateদাবানল এটা সরাতে হবে access.logথেকে access.log.1, কিন্তু পরবর্তী ফাইল কম্প্রেস করতে ব্যর্থ হবে, এবং সেইজন্য পাঠাতে ব্যর্থ USR1nginx সংকেত।

কীভাবে সমস্যা সমাধান করবেন?

  • আপনি যদি লগগুলি সেভ করার জন্য ফাইলটি সেখানে ssh + কমপ্রেসের উপর চাপ দিয়ে থাকেন তবে এটি আবার আনুন। এত তাড়াতাড়ি অ্যাক্সেস বা ত্রুটিযুক্ত লগগুলি কী কারণে পূর্ণ হয়েছিল তা বিশ্লেষণ করতে ভুলবেন না।
  • আপনি কি দেখেন না পারেন, অগ্রভাগ ছাঁটিয়া ফাইল এবং রিলোড nginx বা মুছতে এবং পুনর্সূচনা , নিশ্চিত করা না করার মুছে দিন এবং পুনরায় লোড করুন এই inode মুক্তি করবে না (বলো না দয়া করে হ্যান্ডেল , এটি একটি উইন্ডোজ শব্দ)
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.