কাস্টম মেট্রিক্স সেটআপ করা আপনার প্রয়োজনীয় তথ্যে তাৎক্ষণিক ইনসাইট পাওয়ার সহজ উপায় (লগ লাইন ছানবিন বা জটিল রিপোর্টিং টুলের ঝামেলা ছাড়া)। আপনার অ্যাপ্লিকেশনের ক্রিটিক্যাল মনিটরিং ডেটাকে অর্থপূর্ণ মেট্রিক্স ট্র্যাক করে সাপ্লিমেন্ট করুন যাতে সম্ভাব্য সমস্যা দ্রুত শনাক্ত ও সমাধান করা যায়।
কাস্টম মেট্রিক্স কী?
AppSignal ডিফল্টলি এরর রেট, রেসপন্স টাইম, থ্রুপুট جیسা ক্রিটিক্যাল ডেটা ট্র্যাক করে। এই মেট্রিক্স দিয়ে অ্যাপ্লিকেশন মনিটর করা হয় এবং পারফরম্যান্স ইস্যু হলে নোটিফাই করা হয়।
কাস্টম মেট্রিক্স আপনাকে যেকোনো অ্যাপ্লিকেশন ডেটা ভিজ্যুয়ালাইজ ও ট্র্যাক করতে দেয়, যা অ্যাপ্লিকেশনের পারফরম্যান্সে গভীর ইনসাইট দেয় অতিরিক্ত কনটেক্সট যুক্ত করে — যেমন এক্টিভ ইউজার কাউন্ট বা জব-স্পেসিফিক প্রসেসিং টাইম। AppSignal-এ ড্যাশবোর্ড তৈরি করে কাস্টম মেট্রিক্সকে থ্রুপুট বা ডেটাবেস সাইজের সাথে ট্র্যাক করা যায়।
মেট্রিক্স মেজারমেন্ট পদ্ধতি
AppSignal-এ মেট্রিক্স পাঠাতে তিনটি মেজারমেন্ট মেথড আছে:
Gauge
প্রসঙ্গ বোঝার জন্য: আমাদের অ্যাপ্লিকেশন কেন বেশি বা কম পারফর্ম করছে তা বোঝার জন্য এক্টিভ শপার কতজন আছে তা দেখি। প্রতিবার নতুন ইউজার সেশন তৈরি হলে Gauge ব্যবহার করে এক্টিভ ইউজার কাউন্ট রিপোর্ট করি।
এই কাজে minutely probe ব্যবহার করা যায় — একটি মেকানিজম যা পেরিওডিক্যালি কাস্টম মেট্রিক্স AppSignal-এ পাঠায়। গত মিনিটে কতটি শপিং কার্ট আপডেট হয়েছে তা রেকর্ড করে active_shoppers লেবেলে set_gauge মেথড দিয়ে পাঠান।
Ruby
# minutely probe উদাহরণ
class ActiveShoppersProbe < AppSignal::Probe
def call
count = ShoppingCart.where(updated_at: 1.minute.ago..Time.now).count
AppSignal.set_gauge("active_shoppers", count)
end
end
Elixir
# Elixir minutely probe উদাহরণ
Node.js
// Node.js minutely probe উদাহরণ
কনফিগার করার পর AppSignal-এ চার্ট তৈরি করে এক্টিভ শপার ট্র্যাক করুন:
এই ইনফরমেশন দিয়ে দ্রুত অনুমান করা যায় ওয়েবশপ কীভাবে পারফর্ম করছে। খুব বেশি কাউন্ট দেখলে পারফরম্যান্স ইস্যু előre সমাধান করা যায়।
Counter
Counter দিয়ে ট্র্যাক করা যায় কোনো কিছু কতবার হয়েছে। উদাহরণ: ইউজার কতবার আইটেম কার্টে যোগ করল।
উদাহরণস্বরূপ, অ্যাপ্লিকেশন কতবার ইনভয়েস জেনারেট করছে তা ট্র্যাক করতে চাই। প্রতিবার ইনভয়েস তৈরি হলে কাউন্টার ইনক্রিমেন্ট করুন।
Ruby এবং Elixir-এ increment_counter মেথড, Node.js-এ incrementCounter ফাংশন ব্যবহার করুন।
# Ruby
AppSignal.increment_counter("invoices_generated")
সেটআপের পর AppSignal-এ ইনভয়েস জেনারেশন ট্র্যাক করুন:
অর্ডার প্লেসড মতো রিলেটেড ডেটা পয়েন্টও ট্র্যাক করলে যদি মেট্রিক্স একসাথে ট্র্যাক না করে, তবে ইনভয়েসিং এবং অর্ডারিং লজিক ইন্সপেক্ট করে ক্রিটিক্যাল ইস্যু Фикс করা যায়।
Distribution
রেসপন্স টাইম বা ব্যাকগ্রাউন্ড জব ডিউরেশন যেন ডেটা মেজারমেন্ট রেকর্ড করতে পারেন। এগুলো ট্র্যাক করলে খারাপ পারফর্ম করা ব্যাকগ্রাউন্ড জব বা API এন্ডপয়েন্ট শনাক্ত করা যায়।
অর্ডার কনফার্মেশন জব গড়ে কতটুকু টাইম নেয় তা দেখতে চাই। add_distribution_value মেথড ব্যবহার করুন।
Ruby
AppSignal.add_distribution_value("order_confirmation_job_duration", duration_in_ms)
Elixir
# Elixir distribution উদাহরণ
Node.js
// Node.js distribution উদাহরণ
সেটআপের পর AppSignal-এ কনফার্ম অর্ডার জবের গড় টাইম ট্র্যাক করুন:
কাস্টম ড্যাশবোর্ড কাস্টম মেট্রিক্সের জন্য
AppSignal-এর ইন্টিউইটিভ UI দিয়ে মিনিটের মধ্যে কাস্টম মেট্রিক্স ট্র্যাক শুরু করুন।
- Dashboard navigation-এ "Add dashboard" বাটনে ক্লিক করে নতুন ড্যাশবোর্ড তৈরি করুন।
- "Add graph" বাটনে ক্লিক করে Graph Builder দিয়ে গ্রাফ বানান।
গ্রাফ তৈরি করার সময় মেট্রিক্স এবং ট্যাগ সিলেক্ট করুন, লেজেন্ড ও লেবেল কনফিগার করুন। নির্দিষ্ট টাইম পিরিয়ডের জন্য করেন্ট মেট্রিক ডেটা সাথে সাথে দেখাবে।
কেন মেট্রিক্স গুরুত্বপূর্ণ
লগিং পারফরম্যান্স ইস্যু ঘটার পর ডিবাগ করতে সাহায্য করে, কিন্তু মেট্রিক্স গ্রাহক নোটিশ করার আগে ভবিষ্যতের ইস্যু প্রিভেন্ট করতে সাহায্য করে। কাস্টম মেট্রিক্স দিয়ে আপনি:
- গুরুত্বপূর্ণ বিষয়ে ফোকাস: স্পেসিফিক ডেটা পয়েন্ট একুরেটলি ট্র্যাক করুন, বড় লগ মেটাডেটা বা ইন্সিডেন্ট লিস্ট ছানবিন ছাড়া ফোকাসড ইনসাইট পান।
- বিজনেস পারস্পেক্টিভ: অ্যাপ্লিকেশনের পারফরম্যান্স বুঝুন বিজনেস পারস্পেক্টিভ থেকে, এক্টিভ ইউজার কাউন্ট, KPI, ডেইলি সেলস ট্র্যাক করুন।
- লগিং স্ট্রিমলাইন: 'সব কিছু সব জায়গায় একসাথে' লগিং অন্সাস্টেনেবল। কাস্টম মেট্রিক্স দিয়ে এসেনশিয়াল ডেটা দক্ষতার সাথে ট্র্যাক করুন, লগ ব্যবহার করুন শুধু ট্রাবলশুটিং এবং ডিবাগিংয়ের জন্য।
- প্রোঅ্যাক্টিভली কাজ করুন: কাস্টম ট্রিগার সেট করুন — যেমন ইনভয়েস পাঠাতে বেশি টাইম লাগলে বা অ্যানোমালি হাই এক্টিভ ইউজার 볼륨 হলে ওয়ার্নিং পান। এগুলো আপনাকে প্রোঅ্যাক্টিভলি ইস্যু ইন্সপেক্ট ও রিজল্ভ করতে দেবে গ্রাহক প্রভাবিত হওয়ার আগে।
কাস্টম মেট্রিক্সে গভীরে যান
আপনার অ্যাপ্লিকেশনের মেট্রিক্স থেকে সর্বোচ্চ আউটপুট পেতে চান? এই ব্লগ পোস্টে কাস্টম মেট্রিক্সের একটি ছোট স্লাইস কভার করা হয়েছে। আমাদের ডকুমেন্টেশনে কাস্টম মেট্রিক্স সম্পর্কে সব কিছু আছে।
সাহায্য লাগলে, মেট্রিক্স বা AppSignal/monitoring-র любой বিষয়ে যোগাযোগ করুন।
AppSignal-এর কাস্টম মেট্রিক্স আমাদের অনেক ডেভেলপার-ড্রাইভেন ফিচারের একটি। ডেভেলপাররা পছন্দ করে কারণ:
- সহজ নেভিগেটযোগ্য ইন্টিউইটিভ ইন্টারফেস
- সিম্পল এবং প্রেডিক্টেবল প্রাইসিং
- ডেভেলপার-টু-ডেভেলপার সাপোর্ট
AppSignal-এ নতুন হলে ফ্রি স্ট্রুপওয়াফেল চাইবেন! স্ট্রুপওয়াফেলের স্বাদ প্রায় ততটুকু ভালো লাগে যতটুকু অ্যাপ্লিকেশনের সব মেট্রিক্স আঙ্গুলের নিচে পাওয়া যায় 😉🍪
Connor James
AppSignal-এ Developer Marketing Manager। পডকাস্ট এ্যাডিক্ট, ক্যানোলি প্রেমিক। কালারের স্পেলিং-এ 'u' আছে বলে মনে করেন। অফ ডিউটিতে মাইক, স্টেজ বা সোফায় থাকেন।
Connor James-এর সব আর্টিকেল