সিপিইউ লোড লগ কিভাবে করবেন?


30

কোনও সমস্যা তদন্ত করতে একটি ফাইলের সিপিইউ লোড লগ কিভাবে করবেন?

উত্তর:


42

এটি খুব ভাল কাজ করে:

 while true; do uptime >> uptime.log; sleep 1; done
  • এটি আপনার সিপিইউ লোড প্রতি সেকেন্ডে লগ করবে এবং এটিকে একটি ফাইলে সংযুক্ত করবে uptime.log

    তারপরে আপনি একটি দুর্দান্ত গ্রাফ তৈরি করতে এই ফাইলটি জিনুমারিক বা ওপেনঅফিস স্প্রেডশিটে আমদানি করতে পারেন (আমদানির ক্ষেত্রে 'স্পেস দ্বারা আলাদা' নির্বাচন করুন)।

স্কেইন লক্ষ্য করেছেন যে সমস্যাটি সনাক্ত করার জন্য এটি যথেষ্ট হবে না। সুতরাং, অতিরিক্ত হিসাবে এটি চালান (বা এই অংশের জন্য তার উত্তরটি ব্যবহার করুন):

while true; do (echo "%CPU %MEM ARGS $(date)" && ps -e -o pcpu,pmem,args --sort=pcpu | cut -d" " -f1-5 | tail) >> ps.log; sleep 5; done
  • এটি ps.logপ্রতি পাঁচ সেকেন্ডে শীর্ষস্থানীয় 10 টি সর্বাধিক সিপিইউ ক্ষুধার্ত প্রক্রিয়াগুলিকে একটি ফাইলে সংযুক্ত করবে ।

    নোট করুন যে এটি সম্পূর্ণ নৌকা-বোঝা নয় যে তথ্য topআপনাকে দেবে। এটি কেবল শীর্ষ 10, এবং কেবলমাত্র তাদের সিপিইউ ব্যবহার, মেমোরি ইউজ এবং প্রথম যুক্তি (যেমন তাদের আর কোনও যুক্তি ছাড়াই কমান্ড, যেমন রয়েছে /usr/bin/firefox)

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

এই ফাইলগুলি দেখতে এই রকম হবে:

uptime.log

~$ cat uptime.log 
 22:57:42 up 1 day,  4:38,  4 users,  load average: 1.00, 1.26, 1.21
 22:57:43 up 1 day,  4:38,  4 users,  load average: 0.92, 1.24, 1.21
 22:57:44 up 1 day,  4:38,  4 users,  load average: 0.92, 1.24, 1.21
 22:57:45 up 1 day,  4:38,  4 users,  load average: 0.92, 1.24, 1.21
 ...

ps.log

%CPU %MEM ARGS Mo 17. Jan 23:09:47 CET 2011
 0.7  0.9 /usr/bin/compiz
 0.8  0.5 /usr/lib/gnome-panel/clock-applet
 1.1  1.7 /opt/google/chrome/chrome
 1.2  0.3 /usr/bin/pulseaudio
 1.8  4.0 /opt/google/chrome/chrome
 2.6  1.5 /opt/google/chrome/chrome
 2.6  3.2 /usr/bin/google-chrome
 3.6  2.6 /opt/google/chrome/chrome
 4.9  1.5 /usr/bin/X
 5.7  1.6 /opt/google/chrome/chrome
%CPU %MEM ARGS Mo 17. Jan 23:09:48 CET 2011
 0.7  0.9 /usr/bin/compiz
 0.8  0.5 /usr/lib/gnome-panel/clock-applet
 1.0  1.7 /opt/google/chrome/chrome
 1.2  0.3 /usr/bin/pulseaudio
 1.8  4.0 /opt/google/chrome/chrome
 2.6  1.5 /opt/google/chrome/chrome
 2.6  3.2 /usr/bin/google-chrome
 3.6  2.6 /opt/google/chrome/chrome
 4.9  1.5 /usr/bin/X
 5.7  1.6 /opt/google/chrome/chrome
 ...

3
এটি আসলে সঠিক সিপিইউ ব্যবহার মুদ্রণ করে ?? আমি এটি সেন্টোতে চেষ্টা করেছি এবং কেবলমাত্র মেমোরির ব্যবহার সঠিক ছিল :(
মেনেলাওস বাকোপল্লো

পুটি সংযোগ বন্ধ করার পরেও কীভাবে আমি এই আদেশটি আমার ভিপিএসে চালিয়ে যেতে পারি?
লুকাস বুস্তামন্তে

1
যদি রিপোর্ট করা সিপিইউ ব্যবহারটি psঅযৌক্তিক হয় তবে এটিকে মূল হিসাবে চালানোর চেষ্টা করুন।
স্টেফানো প্যালাজো

পুটি সংযোগ বন্ধ করার পরেও কীভাবে আমি এই আদেশটি আমার ভিপিএসে চালিয়ে যেতে পারি ????
মোস্তফা

10

বিকল্পটি topব্যবহার করে আপনি কমান্ডটি ব্যাচ মোডে চালাতে পারেন -b, তারপরে এটি কোনও ফাইলে ফেলে দিন।

আপনার পিসি শুরুতে, একটি টার্মিনাল খুলুন, চালান

top -b > ~/cpu.txt

তারপরে যখন আপনার পিসি স্থির হয়ে যায়, কেবল (সম্ভবত বিশাল) পাঠ্য ফাইলটি খুলুন এবং ক্র্যাশের ঠিক আগে কী চলছিল সে সম্পর্কে কিছু বিশদের জন্য শেষ এন্ট্রিটি পরীক্ষা করে দেখুন। প্রকৃতপক্ষে ফাইলটি এত মূর্খ হবে যে tail -250 ~/cpu.txtপরিবর্তে একটি চালানো ভাল ।

আপনার সমস্যাটি হার্ডওয়্যার সম্পর্কিত ক্ষেত্রেও আপনার /var/log/kern.log পরীক্ষা করে দেখুন (এটি কেবলমাত্র একটি আপগ্রেডের পরে ঘটছে তবে সম্ভাব্য তবে তা পরীক্ষা করে দেখার মতো নয়)।


1

আমি দেখেছি একটি দুর্দান্ত উত্তর দ্বারা ক্রিস্টোফার করার ইউনিক্স এবং Linux এ এই প্রশ্নের যে ব্যবহারসমূহ top:

top -n 1 -b > top.out

এটি আপনাকে 1 টি পুনরাবৃত্তি দেবে topতারপরে থামবে এবং তারপরে এটি একটি ফাইলে ধাক্কা দেবে।


0

আপনার পুটি (এসএসএইচ ক্লায়েন্ট) সেশন শেষ হওয়ার পরে যাদের এই কমান্ডটি চালানো দরকার For আপনি কমান্ড ব্যবহার করতে পারেন screen(বা এটি ব্যবহার করে ইনস্টল করুন apt-get)

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.