কিভাবে লগ লিখবেন

সুচিপত্র:

কিভাবে লগ লিখবেন
কিভাবে লগ লিখবেন

ভিডিও: কিভাবে লগ লিখবেন

ভিডিও: কিভাবে লগ লিখবেন
ভিডিও: ঠিকানা কিভাবে লিখতে হয় / how to write your address / address writing format on envelope in India 2024, মে
Anonim

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

কিভাবে লগ লিখবেন
কিভাবে লগ লিখবেন

প্রয়োজনীয়

  • - সি সংকলক;
  • - উইন্ডোজ প্ল্যাটফর্ম এসডিকে;
  • - গ্লিবসি জন্য প্যাকেজ বিকাশ।

নির্দেশনা

ধাপ 1

উইন্ডোজ পরিবারের অপারেটিং সিস্টেমের অধীনে কাজ করার জন্য ডিজাইন করা আপনার অ্যাপ্লিকেশন থেকে সিস্টেম লগে লগ লেখার জন্য সমর্থন যুক্ত করুন।

ইভেন্ট উত্স হিসাবে অ্যাপ্লিকেশনটি নিবন্ধিত করতে RegisterEventSource API ফাংশন, লগটিতে একটি এন্ট্রি যুক্ত করার জন্য ReportEvent ফাংশন এবং RegisterEventSource দ্বারা ফিরে আসা হ্যান্ডেলটি বন্ধ করতে DeregisterEventSource ফাংশন ব্যবহার করুন।

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

HANDLE hLog = RegisterEventSource (NULL, "MyApplicationName");

যদি (hLog! = NULL)

{

যদি (রিপোর্ট এভেন্ট (এইচএলএগ, EVENTLOG_INFORMATION_TYPE, 0, 0, NULL, 1, 0, "বার্তা পাঠ্য / 0", NULL))

{

// ইভেন্ট সফলভাবে লগ করা হয়েছিল

}

DeregisterEventSource (hLog);

}

রিপোর্টেভেন্ট ফাংশনটির শব্দার্থকতা সম্পর্কে আরও বিশদ এমএসডিএন-তে https://msdn.microsoft.com/en-us/library/windows/desktop/aa363679%28v=vs.85%29.aspx এ পাওয়া যাবে। এছাড়াও, আপনাকে সিস্টেম রেজিস্ট্রিটিতে অ্যাপ্লিকেশনটির এক্সিকিউটেবল মডিউল সম্পর্কে কিছু তথ্য রাখতে হবে এবং মডিউলটিতে বা তৃতীয় পক্ষের গতিশীল লাইব্রেরিতে একটি নির্দিষ্ট ফর্ম্যাটে সংস্থানগুলি যুক্ত করতে হবে। ইভেন্ট লগ পরিষেবার জন্য রেজিস্ট্রি কী সম্পর্কিত আরও তথ্যের জন্য, দেখুন

ধাপ ২

লিনাক্স-সামঞ্জস্যপূর্ণ অপারেটিং সিস্টেমে লগইন সাধারণত সিসলোগ ডেমন ব্যবহার করে করা যেতে পারে। এই পরিষেবাদির একটি ক্রিয়াকলাপের সেট আকারে একটি অ্যাপ্লিকেশন-স্তরের ইন্টারফেস রয়েছে, এর ঘোষণাগুলি syslog.h শিরোনাম ফাইলটিতে স্থাপন করা হয়।

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

ওপেনলগ ("মাই অ্যাপ্লিকেশন", LOG_CONS | LOG_PID | LOG_NDELAY, LOG_LOCAL1);

syslog (LOG_NOTICE, "মাই অ্যাপ্লিকেশনটি PID% d দিয়ে চালু করা হয়েছে", getuid ());

syslog (LOG_INFO, "তথ্য বার্তা!");

ক্লোজলগ ();

সিসলগ এপিআই ফাংশনের পরামিতিগুলির বিষয়ে আরও তথ্যের জন্য, libc তথ্য ডকুমেন্টেশন দেখুন।

ধাপ 3

ইভেন্টের দৃ.়তা সাবসিস্টেমটি নিজের প্রয়োগ করে স্বতন্ত্র ফাইলগুলিতে লগগুলি লিখুন। এই সমস্যার সমাধানের সহজ সমাধানগুলির মধ্যে একটি হ'ল বৈশ্বিক পরিধিতে বেশ কয়েকটি ফাংশন তৈরি করা, যার মধ্যে একটি অ্যাড ইনফরমেশন মোডে একটি নির্দিষ্ট নামযুক্ত একটি ফাইল খোলে, দ্বিতীয়টি এটি বন্ধ করে এবং তৃতীয়টি এতে পাঠানো একটি বার্তার স্ট্রিং যুক্ত করে এই ফাইলের একটি পরামিতি। ধারণামূলকভাবে, এই সমাধানটি লিনাক্সের সিসলগ প্রোগ্রামিং ইন্টারফেসের সাথে সাদৃশ্যপূর্ণ।

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

প্রস্তাবিত: