Network Inspector — এটি কী, কাজের নীতি এবং নেটওয়ার্ক অনুরোধ নিরীক্ষণ

লেখক: IT Sectr প্রকাশিত: 2026-05-07 পড়ার সময়: 8 মিনিট

Android Studio-তে Network Inspector হল একটি বিল্ট-ইন প্রোফাইলিং টুল যা মোবাইল অ্যাপ্লিকেশনের নেটওয়ার্ক ট্রাফিক রিয়াল টাইমে মনিটর এবং বিশ্লেষণ করার জন্য ডিজাইন করা হয়েছে। আধিকারিক Android Developers ডকুমেন্টেশন (2025) অনুযায়ী, টুলটি অনুরোধ নির্বাহের সময়, স্থানান্তরিত ডেটার পরিমাণ এবং প্রতিটি কলের HTTP স্থিতি ট্র্যাক করার অনুমতি দেয়। টুলটি অ্যাপ্লিকেশন কোডে কোনো পরিবর্তনের প্রয়োজন হয় না এবং API Level 14 এবং তার উপরের যেকোনো প্রজেক্টের সাথে “বক্সের বাইরে” কাজ করে।

মুখ্য বিষয়সমূহ

  • Network Inspector হল নেটওয়ার্ক অনুরোধ মনিটরিংয়ের জন্য Android Profiler-এর একটি উপাদান যা হেডার এবং প্রতিক্রিয়া বডি দেখার ক্ষমতা রাখে
  • ট্রাফিক ইন্টারসেপশন অ্যাপ্লিকেশন থেকে করা সমস্ত HTTP কলের জন্য স্বয়ংক্রিয়ভাবে হয়, যার মধ্যে OkHttp, Retrofit, Ktor এবং WebView অন্তর্ভুক্ত
  • সময়রেখা প্রতিটি কলের দৈর্ঘ্য, আকার এবং স্থিতি নির্দেশ করে অনুরোধগুলোর ধারাবাহিক প্রদর্শন করে
  • বিস্তারিত দৃশ্য প্রতিটি অনুরোধের হেডার, অনুরোধ এবং প্রতিক্রিয়া বডি, কুকিজ এবং দর্দা নির্বাহ সময় অন্তর্ভুক্ত করে
  • ডেটা এক্সপোর্ট HAR ফরম্যাটে সহকর্মীদের সাথে নেটওয়ার্ক ইন্টার্যাকশন শেয়ার করা বা পরবর্তী বিশ্লেষণের জন্য সংরক্ষণ করার অনুমতি দেয়

Network Inspector কী?

Network Inspector হল Android Studio-তে নির্মিত একটি নেটওয়ার্ক কার্যকলাপ প্রোফাইলিং টুল। এটি ডেভেলপারদের অ্যাপ্লিকেশন দ্বারা প্রেরিত সমস্ত HTTP এবং HTTPS অনুরোধ রিয়াল টাইমে দেখার অনুমতি দেয়, যার মধ্যে হেডার, অনুরোধ এবং প্রতিক্রিয়া বডি, স্থিতি কোড এবং নির্বাহকাল অন্তর্ভুক্ত। Android Studio 3.0 থেকে Android Profiler প্যানেলের মাধ্যমে উপলব্ধ।

উদ্দেশ্য এবং প্রয়োগের পরিধি

Network Inspector-এর প্রধান কাজ হল মোবাইল অ্যাপ্লিকেশন এবং সার্ভারের মধ্যে নেটওয়ার্ক যোগাযোগ ডিবাগ করা। টুলটি প্রেরিত ডেটার শুদ্ধতা যাচাই, প্রতিক্রিয়া সময় বিশ্লেষণ, API ত্রুটি অনুসন্ধান এবং অনপ্টিমাল নেটওয়ার্ক প্যাটার্ন সনাক্ত করতে ব্যবহৃত হয় — উদাহরণস্বরূপ, একটি স্ক্রিন লোড করার সময় একাধিক অনুরোধ। Network Inspector API Level 14 যেকোনো ডিভাইসে কাজ করে।

সামঞ্জস্য এবং লাইব্রেরিসমূহ

টুলটি সমস্ত মূল Android HTTP ক্লায়েন্ট সমর্থন করে: OkHttp (সংস্করণ 2.x থেকে), Retrofit, Ktor (KMM), UrlConnection, Apache HttpClient (লেগাসি) এবং WebView। OkHttp এবং Retrofit-এর জন্য OkHttp Profiler লাইব্রেরি প্রয়োজন — Android Studio 4.1+ ব্যবহার করার সময় এটি স্বয়ংক্রিয়ভাবে সংযুক্ত হয়। Ktor-এর জন্য একটি পৃথক ইন্টারসেপ্টর কনফিগারেশন প্রয়োজন।

Network Inspector কীভাবে কাজ করে

Network Inspector Profiler Agent প্রক্রিয়া ব্যবহার করে সিস্টেম স্তরে নেটওয়ার্ক কল ইন্টারসেপ্ট করে, যা Android Profiler-এর সাথে ইনজেক্ট করা হয়। সঠিক কাজের জন্য অ্যাপ্লিকেশনের একটি ডিবাগ বিল্ড প্রয়োজন। টুলটি অ্যাপ্লিকেশন কোড পরিবর্তন করে না এবং মৌলিক কার্যকারিতার জন্য ডিপেন্ডেন্সি যোগ করার প্রয়োজন হয় না।

ট্রাফিক ইন্টারসেপশন প্রক্রিয়া

প্রোফাইলিং শুরু করার পর, Network Inspector অ্যাপ্লিকেশনের ডিবাগ প্রক্রিয়ার সাথে সংযুক্ত হয় এবং OkHttp Client, UrlConnection বা অন্যান্য সমর্থিত লাইব্রেরির মাধ্যমে যাওয়া সমস্ত HTTP কল শোনে। প্রতিটি অনুরোধ একটি টাইমস্ট্যাম্প দিয়ে রেকর্ড করা হয়, যা একটি নেটওয়ার্ক কার্যকলাপের সময়রেখা নির্মাণের অনুমতি দেয়। HTTPS-এর জন্য, একটি সিস্টেম লেয়ার ব্যবহার করা হয়, যা ট্রান্সমিশনের সময় এনক্রিপশন সংরক্ষণ করে কিন্তু Studio-র মধ্যে ডিকোড করা কন্টেন্ট দেখার অনুমতি দেয়।

ডেটা সংগ্রহ আর্কিটেকচার

ডেটা সংগ্রহ Android Studio-র Profiler Service-এর মাধ্যমে হয়, যা একটি পৃথক হোস্ট প্রক্রিয়ায় চলে। ডিভাইসে একটি লাইটওয়েট এজেন্ট চলে, যা ADB চ্যানেলের মাধ্যমে অনুরোধ মেটাডেটা প্রেরণ করে। এটি অ্যাপ্লিকেশনের কর্মক্ষমতার উপর প্রভাব হালা করে — Google-এর মতে অতিরিক্ত ব্যয় 3% এর কম। অনুরোধ ডেটা (বডি, হেডার) কেবল ডিটেল দৃশ্য সক্রিয় থাকলেই প্রেরণ করা হয়।

kotlin
// Network Inspector-এর সঙ্গে সমন্বয়ের জন্য OkHttp সংযোগ করা
val client = OkHttpClient.Builder()
    .addInterceptor(HttpLoggingInterceptor().apply {
        level = HttpLoggingInterceptor.Level.BASIC
    })
    .build()

// Network Inspector স্বয়ংক্রিয়ভাবে ক্লায়েন্টের মাধ্যমে সমস্ত কল ইন্টারসেপ্ট করে
client.newCall(Request.Builder()
    .url("https://api.example.com/data")
    .build()).execute()

Network Inspector-এর মূল বৈশিষ্ট্য

Network Inspector ব্যাপক নেটওয়ার্ক ট্রাফিক বিশ্লেষণের জন্য একটি টুলের সেট প্রদান করে। প্রতিটি বৈশিষ্ট্য একটি নির্দিষ্ট ডিবাগিং কাজ সমাধানের জন্য নির্মিত — হেডার যাচাই থেকে API কর্মক্ষমতা বিশ্লেষণ পর্যন্ত।

অনুরোধ সময়রেখা

Network Inspector-এর প্রধান স্ক্রিন একটি সময়রেখা আকারে সব অনুরোধের একটি কালক্রম প্রদর্শন করে। প্রতিটি অনুরোধ একটি রঙিন বার দ্বারা উপস্থাপিত: সবুজ — সফল প্রতিক্রিয়া (2xx), নীল — পুনর্নির্দেশনা (3xx), হলুদ — ক্লায়েন্ট ত্রুটি (4xx), লাল — সার্ভার ত্রুটি (5xx)। বারের দৈর্ঘ্য সংযোগ থেকে সম্পূর্ণ প্রতিক্রিয়া প্রাপ্তি পর্যন্ত অনুরোধ নির্বাহ সময়ের অনুরূপ। এটি ধীর বা ব্যর্থ অনুরোধ তাৎক্ষণিক সনাক্ত করার অনুমতি দেয়।

প্যারামিটারবর্ণনাউদাহরণ মান
URLঅনুরোধের সম্পূর্ণ ঠিকানাhttps://api.example.com/v2/users
MethodHTTP অনুরোধ পদ্ধতিPOST
StatusHTTP প্রতিক্রিয়া কোড200 OK
Sizeঅনুরোধ + প্রতিক্রিয়ার আকার বাইটে12.4 KB
Timeমোট নির্বাহন সময়342 ms

অনুরোধের বিস্তারিত দৃশ্য

একটি নির্দিষ্ট অনুরোধ নির্বাচন করলে, একটি বিস্তারিত প্যানেল খোলে: Headers (সমস্ত অনুরোধ এবং প্রতিক্রিয়া হেডার), Request Body (টেক্সট বা বাইনারি ফরম্যাটে অনুরোধ বডি), Response Body (JSON ফরম্যাটিং সমর্থন সহ প্রতিক্রিয়া বডি), Cookies (প্রেরিত এবং গৃহীত), Timing (দর্দা অনুযায়ী সময় বিভাজন: DNS, Connection, TLS Handshake, Request, Response)।

ফিল্টারিং এবং অনুসন্ধান

Network Inspector URL, HTTP পদ্ধতি, স্থিতি কোড এবং কন্টেন্ট ধরনের উপর ভিত্তি করে অনুরোধ ফিল্টারিং সমর্থন করে। নির্দিষ্ট ডোমেনের অনুরোধ বাদ দেওয়া যেতে পারে শুধুমাত্র প্রয়োজনীয় API-তে ফোকাস করতে। অনুসন্ধান অনুরোধের সমস্ত ক্ষেত্রে কাজ করে, যার মধ্যে বডি এবং হেডার অন্তর্ভুক্ত। সম্মিলিত ফিল্টার নিয়মের একটি সেট তৈরি করার অনুমতি দেয় যা প্রতিবার প্রোফাইলিং শুরু হলে স্বয়ংক্রিয়ভাবে প্রয়োগ হয়।

অনুরোধ গ্রুপিং এবং তুলনা

সময়রেখা URL প্যাটার্নের উপর ভিত্তি করে অনুরোধ গ্রুপিং সমর্থন করে। উদাহরণস্বরূপ, /api/v2/users/* অনুরোধগুলি একটি গ্রুপে সংকুচিত করা যেতে পারে। এটি বিশ্লেষণ সহজ করে যখন অ্যাপ্লিকেশন অল্প সময়ে শতাধিক অনুরোধ করে। পার্শ্ববর্তী অনুরোধ তুলনা বৈশিষ্ট্য পুনরাবৃত্তি কলের সময় সার্ভার প্রতিক্রিয়ায় পরিবর্তন সনাক্ত করতে সাহায্য করে।

Network Inspector দিয়ে নেটওয়ার্ক অনুরোধ ডিবাগিং

Network Inspector-এর ব্যবহারিক ব্যবহার সাধারণ ডিবাগিং পরিস্থিতি অন্তর্ভুক্ত করে: ডেটা ফরম্যাট যাচাই, ধীর এন্ডপয়েন্ট সনাক্তকরণ, বন্ধ না হওয়া সংযোগের কারণে মেমরি লিক সনাক্তকরণ এবং ক্যাশিং বিশ্লেষণ।

JSON প্রতিক্রিয়া গঠন যাচাই

একটি সাধারণ কাজ হল সার্ভার প্রত্যাশিত ফরম্যাটে ডেটা ফেরত দিচ্ছে কিনা নিশ্চিত করা। Network Inspector JSON ফরম্যাটিং সহ প্রতিক্রিয়া বডি প্রদর্শন করে, সিনট্যাক্স হাইলাইটিং অন্তর্ভুক্ত। যদি প্রতিক্রিয়া ক্লায়েন্টে পার্স না হয়, ইন্সপেক্টর তাৎক্ষণিক কারণ দেখায়: অনুপস্থিত ফিল্ড, ভুল ডেটা টাইপ, বা অত্যধিক নেস্টিং। সার্ভার ত্রুটি ফেরত দিলে, ইন্সপেক্টর কোড এবং বার্তা সহ ত্রুটি গঠন দেখায়। বাইনারি ফরম্যাটের (Protocol Buffers, ছবি) জন্য, আকার এবং কন্টেন্ট-টাইপ প্রদর্শিত হয়।

নির্বাহন সময় বিশ্লেষণ

Timing ট্যাব অনুরোধ নির্বাহনকে ধাপে ভাগ করে: DNS রেজলিউশন, TCP কানেকশন, TLS হ্যান্ডশেক, অনুরোধ প্রেরণ, প্রতিক্রিয়া গ্রহণ। মোট সময় 1–2 সেকেন্ড অতিক্রম করলে, ধাপে ভাগ কারণ নির্ধারণে সাহায্য করে। Timing বিশ্লেষণ সার্ভার-পাশ অপ্টিমাইজেশন শুরুর আগেই প্রতিবন্ধক চিহ্নিত করতে সাহায্য করে।

ডুপ্লিকেট অনুরোধ অনুসন্ধান

Network Inspector অপ্রয়োজনীয় অনুরোধ সনাক্ত করতে সাহায্য করে — উদাহরণস্বরূপ, যখন প্রতিটি স্ক্রিন ঘূর্ণনে Activity ডেটা পুনরায় লোড করে। সময়রেখায়, ধারাবাহিক অভিন্ন অনুরোধের একটি সিরিজ স্পষ্টভাবে সমস্যা নির্দেশ করে। সমাধানে ক্যাশিং, ViewModel ব্যবহার অন্তর্ভুক্ত হতে পারে।

kotlin
// ডুপ্লিকেশন দূর করতে OkHttp দিয়ে অনুরোধ ক্যাশিং
val cache = Cache(
    File(context.cacheDir, "http_cache"),
    cacheSize = 10L * 1024 * 1024 // 10 MB
)

val cachedClient = OkHttpClient.Builder()
    .cache(cache)
    .addNetworkInterceptor(CacheInterceptor())
    .build()

Network Inspector-এর সীমাবদ্ধতা এবং বিকল্প

ব্যাপক ক্ষমতা সত্ত্বেও, Network Inspector-এর কয়েকটি সীমাবদ্ধতা রয়েছে যা বিবেচনা করা গুরুত্বপূর্ণ। কিছু পরিস্থিতির জন্য — যেমন স্ব-স্বাক্ষরিত সার্টিফিকেট সহ HTTPS ইন্টারসেপশন বা তৃতীয় পক্ষের লাইব্রেরি ট্রাফিক বিশ্লেষণ — বিকল্প টুলের প্রয়োজন হতে পারে।

প্ল্যাটফর্ম এবং লাইব্রেরি সীমাবদ্ধতা

Network Inspector কেবল Android অ্যাপ্লিকেশন এর সাথে কাজ করে এবং iOS সমর্থন করে না। Kotlin Multiplatform (KMM) এর জন্য, কিছু অনুরোধ প্রদর্শিত নাও হতে পারে যদি সেগুলো নেটিভ অংশে নির্বাহিত হয়।

বিকল্প টুল

গভীর নেটওয়ার্ক ট্রাফিক বিশ্লেষণের জন্য, তৃতীয় পক্ষের সমাধান রয়েছে: Charles Proxy, Proxyman, Wireshark, Facebook-এর Stetho, Chucker।

টুলধরনপ্ল্যাটফর্মHTTPSHAR
Network InspectorAndroid Studio-তে নির্মিতAndroidহ্যাঁহ্যাঁ
Charles Proxyপ্রক্সি সার্ভারক্রস-প্ল্যাটফর্মহ্যাঁহ্যাঁ
Proxymanপ্রক্সি সার্ভারmacOS, iOSহ্যাঁহ্যাঁ
Chuckerঅ্যাপ্লিকেশনের মধ্যে ইন্সপেক্টরAndroidহ্যাঁনা
Wiresharkপ্যাকেট বিশ্লেষকক্রস-প্ল্যাটফর্মনানা

সাধারণ জিজ্ঞাসা

Network Inspector কেন অনুরোধ দেখায় না?

নিশ্চিত করুন অ্যাপ্লিকেশনটি ডিবাগ কনফিগারেশন এ তৈরি এবং Android Profiler সংযুক্ত করে চালু করা হয়েছে। OkHttp 4.x ব্যবহার করলে, লাইব্রেরিটি সর্বশেষ সংস্করণে আপডেট করার প্রয়োজন হতে পারে।

HTTPS ট্রাফিক দেখা যাবে কি?

হ্যাঁ, Network Inspector অতিরিক্ত কনফিগারেশন ছাড়াই HTTPS ট্রাফিক সমর্থন করে। Charles Proxy-র বিপরীতে, কোনো রুট সার্টিফিকেট ইনস্টলের প্রয়োজন নেই।

Network Inspector থেকে ডেটা কীভাবে এক্সপোর্ট করবেন?

Network Inspector HAR (HTTP Archive) ফরম্যাটে ডেটা এক্সপোর্ট করার অনুমতি দেয়। প্যানেলের উপরে ডান কোণে Export বাটনে ক্লিক করুন।

Network Inspector কি অ্যাপ্লিকেশন কর্মক্ষমতা প্রভাবিত করে?

Google-এর মতে, সক্রিয় প্রোফাইলিংয়ের সময় অতিরিক্ত ব্যয় 3% অতিক্রম করে না। Network Inspector নিষ্ক্রিয় থাকলে কোনো অতিরিক্ত ব্যয় নেই।

প্রতিক্রিয়া raw ডেটা হিসাবে দেখালে কী করবেন?

যদি প্রতিক্রিয়া বডি অপঠনযোগ্য raw ডেটা হিসাবে প্রদর্শিত হয়, এটি gzip কম্প্রেশন বা বাইনারি ফরম্যাটের কারণে হতে পারে। Network Inspector স্বয়ংক্রিয়ভাবে gzip ডিকোড করে।

সারাংশ

  • Network Inspector হল Android Studio-তে নির্মিত একটি টুল যা অ্যাপ্লিকেশন কোড পরিবর্তন না করেই রিয়াল টাইমে নেটওয়ার্ক অনুরোধ মনিটর এবং ডিবাগ করে
  • স্বয়ংক্রিয় ইন্টারসেপশন OkHttp, Retrofit, Ktor এবং UrlConnection এর মাধ্যমে সব HTTP কলের
  • সময়রেখা রঙ-সংকেতিত স্থিতি কোড সহ ধীর, ব্যর্থ এবং পুনরাবৃত্ত অনুরোধ তাৎক্ষণিক সনাক্ত করতে দেয়
  • বিস্তারিত দৃশ্য প্রতিটি অনুরোধের হেডার, বডি (JSON ফরম্যাটিং সহ), কুকিজ এবং দর্দা-স্তরের নির্বাহ সময় বিভাজন অন্তর্ভুক্ত করে
  • Timing দর্দা বিভাজন (DNS, TCP, TLS, Request, Response) ধীর অনুরোধের কারণ নির্ধারণে সাহায্য করে
  • HAR এক্সপোর্ট সেশন সংরক্ষণ করে সহকর্মীদের সাথে শেয়ার বা Charles Proxy-র মতো টুলে বিশ্লেষণ করার অনুমতি দেয়
  • আরও জটিল পরিস্থিতির জন্য Charles Proxy বা Proxyman ব্যবহার করুন

আমরা একটি মোবাইল অ্যাপ্লিকেশন টার্নকি তৈরি করব

IT Sectr 2017 সাল থেকে স্টার্টআপ এবং ব্যবসার জন্য iOS এবং Android অ্যাপ্লিকেশন তৈরি করে। আমরা আপনাকে পরামর্শ দেব এবং সেরা সমাধান প্রস্তাব করব।

প্রকল্প নিয়ে আলোচনা করুন

আরও পড়ুন