Buউবুন্টু-বাগটি করার পরে কী ঘটে?


14

কিছুক্ষণ আগে আপনি দৌড়ে গিয়েছিলেন apport-bugবা ubuntu-bugকোনও বাগ রিপোর্ট করতে শুরু করেছেন। এরপরে সিস্টেমটি আপনার অ্যাকাউন্টের সাথে লঞ্চপ্যাড খুলবে, সংগৃহীত তথ্য আপলোড করবে এবং আপনাকে বাগের প্রতিবেদনে আরও তথ্য যুক্ত করতে দেবে।

এখন যখন আমি চালিত করি gksudo ubuntu-bug(উদাহরণস্বরূপ crash-File দিয়ে যুক্তি হিসাবে) সাধারণ বাগ ডায়ালগটি উপস্থিত হয়

এখানে চিত্র বর্ণনা লিখুন

এবং সব শেষ.

রিপোর্ট কোথায় পাঠানো হচ্ছে? অবশ্যই বাগ রিপোর্ট হিসাবে লঞ্চপ্যাড না করা (যদিও কংক্রিট পরিস্থিতিতে লোকেরা সেই বাগ সম্পর্কে একটি প্রতিবেদন দায়ের করতে সক্ষম হয়েছে)।

সুতরাং: এই প্রতিবেদনটি কোথায় পাঠানো হয়েছে (এবং কেবলমাত্র) আমি কীভাবে এখনও আমার সিস্টেম থেকে একটি বাগ রিপোর্ট ফাইল করতে পারি (সম্পর্কিত ফাইলগুলি আপলোড করা আরও সহজ করে তোলে)

এটি কি "সিস্টেম" সিদ্ধান্ত নিয়েছে যে এটি ইতিমধ্যে বিদ্যমান বাগের সদৃশ হবে?

উত্তর:


7

প্রযুক্তিগতভাবে, ubuntu-bugস্থানীয়ভাবে ক্র্যাশ প্রতিবেদনটি লগ করুন। একটি পৃথক প্রোগ্রাম, whoopsieলগ করা প্রতিবেদনগুলির জন্য নজর রাখে এবং সেগুলি একটি কেন্দ্রীয় ডাটাবেসে আপলোড করে, যেখানে ওভাররিচিং সমস্যাগুলি সনাক্ত করার জন্য সেগুলিকে স্বয়ংক্রিয়ভাবে গ্রুপ করা হয়।

উবুন্টু ত্রুটি ট্র্যাকারে ফলাফলগুলি প্রদর্শিত হয় :

উবুন্টুতে ত্রুটি রিপোর্টের গ্রাফ

সমষ্টিগত প্রবণতাগুলি সর্বজনীনভাবে উপলব্ধ এবং প্রতিবেদন বিশদগুলি বিশ্বস্ত বিকাশকারীদের কাছে উপলভ্য। উবুন্টু উইকিতে আরও বিশদ পাওয়া যায় ।

ডিফল্টরূপে, ubuntu-bugস্থিতিশীল প্রকাশে ক্র্যাশ প্রতিবেদনের জন্য লঞ্চপ্যাডে বাগগুলি খোলেন না, তবে আপনি এটি চাইলে এটি কনফিগার করতে পারেন। এই পরিবর্তনটি করার পরে, আপনি চালিয়ে একটি বিদ্যমান ক্র্যাশ রিপোর্টের জন্য একটি বাগ খুলতে পারেন ubuntu-bug /var/crash/foo.crash


3

সংগৃহীত তথ্য বা রিপোর্ট একটি বাগ ট্র্যাকিং সিস্টেমে আপলোড হয়।

সিস্টেমে কোনও প্রক্রিয়া যদি সাধারণত একটি 'ক্র্যাশ' (বিভাগীয় লঙ্ঘন, বাস ত্রুটি, ভাসমান পয়েন্ট ব্যতিক্রম ইত্যাদি) হিসাবে উল্লেখ করা সংকেতের কারণে মারা যায়, বা যেমন প্যাকেজযুক্ত পাইথন অ্যাপ্লিকেশনটি একটি ব্যতীত ব্যতিক্রম উত্থাপন করে তবে অ্যাপোর্ট ব্যাকএন্ড স্বয়ংক্রিয়ভাবে আহ্বান করা হয়।

এটি / var / crash / এ ফাইলের প্রাথমিক ক্র্যাশ প্রতিবেদন তৈরি করে (ফাইলটির নাম ক্র্যাশড এক্সিকিউটেবলের নাম এবং ব্যবহারকারী আইডি থেকে তৈরি)। ক্র্যাশ করা প্রক্রিয়া যদি বর্তমানে লগইন করা ব্যবহারকারীটির সাথে থাকে বা এটি কোনও সিস্টেম প্রক্রিয়ার সাথে সম্পর্কিত এবং ব্যবহারকারী একজন প্রশাসক, অ্যাপপোর্টটি ক্র্যাশ সম্পর্কে ব্যবহারকারীকে অবহিত করে এবং সমস্যার প্রতিবেদন করার প্রস্তাব দেয়।

যদি ব্যবহারকারী "ত্রুটি প্রতিবেদনটি প্রেরণ করুন" চেকবক্সটিকে সক্ষম করে ফেলে থাকে তবে অ্যাপপোর্ট সংগ্রহ করা তথ্য বাগ ট্র্যাকিং সিস্টেমে আপলোড করে। এর পরে এটি একটি বুদ্ধিমান ডিফল্ট বাগ শিরোনাম সহ প্যাকেজগুলির বাগ ফাইলিং পৃষ্ঠাটি খুলবে এবং বাকী ফাইলিং প্রক্রিয়াটির বাকী বাক্যটি ওয়েব ইউআইতে ফেলে দেয়।

উবুন্টু আমাদের বাগ ট্র্যাকিং সিস্টেমের মাধ্যমে প্রতিদিন অবিশ্বাস্যভাবে বিপুল সংখ্যক বাগ রিপোর্ট পেয়ে থাকে receives এর প্রত্যেকটিরই পড়া, মূল্যায়ন এবং বাছাই করা দরকার যাতে এটি ঠিক করা যায়। আমরা এখানে আপনার সহায়তা বাগের সাহায্যে ব্যবহার করতে পারি। বাগ ট্রিজেজ প্রক্রিয়াটির চাক্ষুষ উপস্থাপনের জন্য, এই দুর্দান্ত ফ্লো চার্টগুলি দেখুন।

প্রতিটি বাগ রিপোর্ট প্রতিবেদকের সাথে কথোপকথন। উবুন্টু সম্প্রদায়ের সাথে সাধারণত যে কোনও সাংবাদিকের প্রথম যোগাযোগ হয় তা বাগ ট্রাইজারের মাধ্যমে হয়, যারা একটি সম্পূর্ণ বাগ রিপোর্ট একসাথে রাখার চেষ্টা করে। এটি খুব গুরুত্বপূর্ণ যে আমরা একটি ভাল ধারণা প্রদান করি, তাই দয়া করে বিনয়ী হন এবং আপনার সেরা ইংরেজিটি ব্যবহার করার চেষ্টা করুন।

সহজ, অবিবাহিত বাগগুলিতে কাজ করা শুরু করার এবং ট্রাইজিং পদ্ধতির সাথে পরিচিত হওয়ার একটি ভাল উপায় কারণ আপনাকে বাগের জীবনচক্রের প্রতিটি দিকই মোকাবেলা করতে হবে। বাগবিহীন বাগ বিভাগগুলি সেগুলি কোথায় পাওয়া যাবে তা ব্যাখ্যা করে।

বাগ প্রকার

প্রতিবেদন রিপোর্ট

অ্যাপোর্টের প্রতিবেদনগুলি স্বয়ংক্রিয় বাগ রিপোর্টিং প্রোগ্রাম অ্যাপোর্টের মাধ্যমে বাগগুলি প্রতিবেদন করা হয়। অ্যাপোর্ট ব্যবহার করে বাগ রিপোর্ট করা বাগের প্রতিবেদন করার পছন্দের উপায় কারণ এটি বিকাশকারীদের প্রভাবিত সিস্টেম সম্পর্কে প্রচুর তথ্য দেয়। যখন অ্যাপপোর্ট ব্যবহৃত হয়, পুরো প্রক্রিয়াটি দ্রুততর করে, কম অতিরিক্ত তথ্যের প্রয়োজন হয়।

আপনি এই বাগগুলি তাদের বিবরণে সিস্টেমের তথ্যের যুক্ত তালিকা দ্বারা সনাক্ত করতে পারেন। কিছু প্রোগ্রামের বাগের প্রতিবেদন করার সময় আরও তথ্য যুক্ত করে অ্যাপপোর্টের জন্য হুক থাকে। এই তথ্যগুলি সাধারণত সংযুক্তিগুলিতে পাওয়া যায়।

নিশ্চিত হওয়া বাগ

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

বৈশিষ্ট্য অনুরোধ

বাগ রিপোর্টটি যদি আসলে বৈশিষ্ট্যের অনুরোধ হয় তবে দুটি সম্ভাবনা রয়েছে। যদি অনুরোধকৃত বর্ধিততা ছোট এবং যথাযথভাবে সংজ্ঞায়িত হয় এবং / অথবা পরামর্শটি একটি প্রবাহ প্রকল্পের বিষয়ে উদ্বেগ প্রকাশ করে তবে বাগের গুরুত্ব 'বিশিষ্ট'-এ সেট করা উচিত। প্রতিবেদনটি সম্পূর্ণ হয়ে গেলে স্থিতিটি 'ট্র্যাজেড' এ সেট করা উচিত।

কেবল উবুন্টু বাগ নিয়ন্ত্রণ দলের সদস্যরা এটি করতে পারবেন। আপনি যদি সদস্য না হন তবে আপনাকে এমন কাউকে জিজ্ঞাসা করতে হবে যিনি আপনার জন্য এটি করছেন। # উবুন্টু-বাগগুলিতে বাগ নম্বরটি আটকান এবং বলুন যে আপনি মনে করেন যে বাগটি 'विशलिস্ট' এ সেট করা উচিত। কেউ তা লক্ষ্য করে আপনার জন্য সেট করবে, যদিও তাৎক্ষণিকভাবে প্রয়োজন হয় না।

এটি অভ্যন্তরীণভাবে কীভাবে কাজ করে?

ক্রাশ বাধা

কোর ডাম্পটিকে সরাসরি এপোর্টে পাইপ দেওয়ার জন্য অ্যাপপোর্ট / প্রোক / সিএস / কার্নেল / কোর_প্যাটার্ন ব্যবহার করে:

$ cat /proc/sys/kernel/core_pattern
|/usr/share/apport/apport %p %s %c
$ 

দ্রষ্টব্য: এমনকি যদি ইউলিমিট অক্ষম কোর ফাইলগুলিতে সেট করা থাকে (শূন্যের একটি মূল ফাইলের আকার শূন্যে উলিমিট-সি 0 ব্যবহার করে) তবে অ্যাপপোর্টটি ক্র্যাশটিকে ক্যাপচার করবে। পাইথন ক্র্যাশকে বাধা দেওয়ার জন্য এটি /etc/python*/sitecustomize.pyআনহ্যান্ডেল ব্যতিক্রমগুলিতে কল কল করার জন্য একটি ইনস্টল করে।

উদাহরণ

পিআইডি 1 (আপস্টার্ট) মারা গেলে অ্যাপপোর্ট মূল ফাইলগুলি ক্যাপচার করতে সক্ষম হয়:

  1. যদি আপস্টার্ট কোনও অভ্যন্তরীণ অসঙ্গতি সনাক্ত করে তবে এটি SIGABRT সিগন্যাল উত্থাপন করে।
  2. আপসার্ট ক্র্যাশ হ্যান্ডলারকে SIGABRT এ ডাকা হয়।
  3. আপস্টার্ট ক্র্যাশ হ্যান্ডলার একটি শিশু প্রক্রিয়া কাঁটাচামচ করে।
  4. আপস্টার্ট শিশু প্রক্রিয়াটি আবার সংকেত উত্থাপন করে যার ফলস্বরূপ শিশু অস্বাভাবিকভাবে বাইরে বেরিয়ে আসে।
  5. কার্নেল সনাক্ত করে যে শিশু প্রক্রিয়াটি অস্বাভাবিকভাবে বেরিয়ে এসেছিল এবং অ্যাপোর্টকে কল করে, মূল ফাইলটি স্ট্যান্ডার্ড ইনপুট (/ proc / sys / কার্নেল / কোর_প্যাটার্নের কারণে) সরবরাহ করে।
  6. অ্যাপোর্ট মূল ফাইলটি ডিস্কে / var / ক্র্যাশ / লিখে দেয়।
  7. পিআইডি 1 তার সন্তানের সমাপ্ত হওয়ার জন্য অপেক্ষা করে (যা কেবল তখনই ঘটে যখন মূল ফাইলটি লেখা শেষ হয়)।
  8. পিআইডি 1 প্রস্থান করে।
  9. কর্নেল আতঙ্ক
  10. পরবর্তী বুটে, ওফসপি ক্র্যাশ ফাইলটি সনাক্ত করে এটি প্রক্রিয়া করবে।

ব্যাক-এন্ড

বিলম্ব এবং সিপিইউ / আইও প্রভাবটিকে যতটা সম্ভব কম /usr/share/apport/apportরাখার জন্য, ক্র্যাশ প্রক্রিয়া এখনও বিদ্যমান থাকা অবস্থায় কেবলমাত্র ডেটা সংগ্রহ করে: /proc/pidমূল ডাম্প, এক্সিকিউটেবল পাথ এবং সংকেত নম্বর থেকে তথ্য। প্রতিবেদনটি লিখিত আছে /var/crash/executable_path.uid.crash

সামনের প্রার্থনা

জিনোমে আপডেট-বিজ্ঞপ্তিদাতা একটি ইনোটিফাই ওয়াচ রাখে /var/crash। যখনই নতুন কিছু আছে, এটি কল করে / usr / share / apport / apport-checkreport। যদি নতুন প্রতিবেদনগুলি থাকে তবে এটি / usr / share / apport / apport-gtk কল করে, যা উপরের স্ক্রিনশটগুলিতে দেখানো সীমানা।

এরপরে প্যাকেজ সংস্করণ, প্যাকেজ ফাইল চেকসাম, বা ওএস সংস্করণ যেমন অতিরিক্ত তথ্য সংগ্রহ করে এবং সমস্ত প্যাকেজ হুককে কল করে। এটি অক্ষম করতে, আপনি g.setts com.ubuntu.update-notifier show-apport-crashes মিথ্যা (আপনার সাধারণ ডেস্কটপ ব্যবহারকারী হিসাবে) চালাতে পারেন।

লঞ্চপ্যাড-ভিত্তিক অটো-retracer

ক্যানোনিকাল ডেটা সেন্টার একটি পরিষেবা চালায় যা স্বয়ংক্রিয়ভাবে বাগের সাথে বাগগুলি সরিয়ে নিয়ে যায়। লঞ্চপ্যাডে আর্কিটেকচার অনুসারে বাগগুলি ট্যাগ করার মাধ্যমে, একটি retrace করা হবে এবং ট্যাগটি সরানো হবে। যে ট্যাগগুলি ব্যবহৃত হয় তা হ'ল-i386-retrace বা প্রয়োজন-amd64-retrace। ঘোষণা দেখুন।

প্রতি প্যাকেজ অ্যাপপোর্ট হুকস

প্যাকেজগুলির পক্ষে সিস্টেম থেকে সংগ্রহ করা এবং বাগ রিপোর্টে অন্তর্ভুক্ত তথ্য নির্দিষ্ট করা সম্ভব। এগুলি প্যাকেজগুলিতে থাকা অ্যাপপোর্ট হুক দ্বারা সম্পন্ন হয়। কিছু দরকারী উদাহরণের জন্য দেখুন:

  • উত্স_এক্সর্গ.পি - বাগের প্রতিবেদনে অতিরিক্ত লগ ফাইল এবং হার্ডওয়্যার বিশদ যুক্ত করে
  • ইউএসপ্ল্যাশ - নির্দিষ্ট কোড পাথগুলিতে ক্র্যাশ উপেক্ষা করে
  • উত্স_টোটেম.পি - প্রতিবেদককে প্রশ্ন জিজ্ঞাসা করে এবং প্রতিক্রিয়ার ভিত্তিতে বিভিন্ন তথ্য সংগ্রহ করে

ইন / ইউএসআর / শেয়ার / অ্যাপোর্ট / প্যাকেজ-হুকস। এছাড়াও প্যাকেজগুলির একটি তালিকা রয়েছে যা অ্যাপপোর্ট হুক সরবরাহ করে।

যদি অ্যাপোর্টের মাধ্যমে ক্র্যাশ বা বাগ রিপোর্ট জমা দেওয়া হয় তবে সংশ্লিষ্ট হুকগুলি স্বয়ংক্রিয়ভাবে চালিত হবে run যদি আপনার কাছে ইতিমধ্যে রিপোর্ট করা বাগ রয়েছে যা অ্যাপপোর্ট ছাড়াই দায়ের করা হয়েছিল, এবং আপনি এই হুকগুলির থেকে প্রাপ্ত তথ্যে আগ্রহী হন, আপনি বাগ রিপোর্টারকে অ্যাপপোর্ট-কালেক্ট বুগবার্বারটি ব্যবহার করতে বলতে পারেন।

সূত্রটি ব্যবহার করুন, লূক!

  • আপনি লঞ্চপ্যাড প্রকল্প পৃষ্ঠা থেকে উজানের টার্বল বা উবুন্টু উত্স সংরক্ষণাগার থেকে উবুন্টু উত্স টারবাল ডাউনলোড করতে পারেন।
  • লঞ্চপ্যাডে বাজার আরসিএসের সাহায্যে অ্যাপপোর্টটি বিকাশ করা হয়েছে। আপনি যদি এতে অবদান রাখতে চান বা এর উপর ভিত্তি করে আপনার নিজস্ব সিস্টেম বিকাশ করতে চান, তবে আপনি bzr এর সাথে নিজস্ব শাখা পেতে পারেন lp: ট্রাঙ্কের জন্য অ্যাপপোর্ট, বা উবুন্টু প্যাকেজিং শাখার জন্য ডি-চেকআউট -এ অ্যাপার্টমেন্ট।

ভবিষ্যতের পরিকল্পনা

পারফরম্যান্সে বিভিন্ন উন্নতি, প্রতিবেদনের সাথে কাজ করার জন্য আরও ভাল সরঞ্জাম এবং আরও ভাষার সংহতকরণ (মনো / পাইথন স্ট্যাকের চিহ্ন, দৃ .় বার্তা ইত্যাদি) সম্পর্কিত প্রাসঙ্গিকতা দেখুন।

সূত্র: অ্যাপপোর্ট , কীভাবে ট্র্যাজেড , এবং কীভাবে অ্যাপপোর্ট সক্ষম করা যায়


এই প্রক্রিয়াটি আমি অভ্যস্ত - তবে এখন শেষ বাক্যটি আর প্রয়োগ করে না বলে মনে হয় - কোনও ওয়েব ইউআই খোলে না। আপনার উত্তর আমার মনে আসে এমন ধারণা দিয়ে আমি আমার প্রশ্নটি সংশোধন করেছি।
গুটবার্ট

আমি মনে করি যে ওয়েব ইউআই স্থানীয় নয় (ব্যবহারকারী পক্ষের নয়), তবে অনলাইন, তবে আমি নিশ্চিত নই।
মিচ

এই উত্সটি সর্বশেষ নভেম্বর 2012 এ আপডেট করা হয়েছিল The তথ্যগুলি পুরানো হতে পারে ..
গুন্টবার্ট

আমি এটি দেখেছি, কিন্তু আমি মনে করি যেহেতু কিছুই পরিবর্তন হয়নি, তাই আপডেট করার দরকার নেই, আমার ধারণা। এখন সম্ভবত 13.10 প্রকাশিত হওয়ার পরে, পরিবর্তনগুলি হবে যেহেতু এটি মাল্টি ডিভাইস হবে। সর্বশেষ অ্যাপোর্টটি হ'ল 10 ই অক্টোবর, 2012 তারিখে 2.61 ,
মিচ
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.