27 মার্চ, 2025 থেকে, আমরা AOSP তৈরি করতে এবং অবদান রাখতে aosp-main
এর পরিবর্তে android-latest-release
ব্যবহার করার পরামর্শ দিচ্ছি। আরও তথ্যের জন্য, AOSP-তে পরিবর্তনগুলি দেখুন।
হোস্ট-চালিত মেট্রিক্স সংগ্রাহক
সেভ করা পৃষ্ঠা গুছিয়ে রাখতে 'সংগ্রহ' ব্যবহার করুন
আপনার পছন্দ অনুযায়ী কন্টেন্ট সেভ করুন ও সঠিক বিভাগে রাখুন।
হোস্ট-চালিত মেট্রিক্স সংগ্রাহক হোস্টে চলে এবং ডিভাইসের দিকে নয়। তারা লক্ষ্যবস্তুতে থাকা মেট্রিকগুলি সংগ্রহ করতে হোস্টের দিক থেকে ডিভাইসের সাথে যোগাযোগ করে।
মেট্রিক্স সংগ্রাহক নকশা
সমস্ত সংগ্রাহক যে বেস ক্লাসটি প্রসারিত করে তা হল BaseDeviceMetricCollector
, যা একই ভাগ করা মৌলিক কার্যকারিতা প্রদান করতে সহায়তা করে:
- ফিল্টারিং
- নিষ্ক্রিয় করা হচ্ছে
- টেস্ট কেস বনাম টেস্ট রান সংগ্রহ
সংগ্রাহকরা একটি ফলাফল রিপোর্টার মডেল অনুসরণ করে কারণ তারা হোস্টে পরীক্ষা সম্পাদনের সাথে সিঙ্ক্রোনাইজ করে। অন্য কথায়, যদি পরীক্ষাগুলি হোস্ট-চালিত হয়, পরীক্ষাটি পরবর্তী নির্বাহের ধাপে যাওয়ার আগে সংগ্রাহকদের মৃত্যুদন্ড কার্যকর করা হয়।
উদাহরণস্বরূপ, যদি সংগ্রাহক testEnded
এ নির্বাহ করেন, তাহলে সংগ্রাহকরা testStart
সাথে পরবর্তী পরীক্ষায় যাওয়ার আগে নির্বাহ করে।
একটি হোস্ট-চালিত মেট্রিক্স সংগ্রাহক প্রয়োগ করুন
বেস ক্লাস BaseDeviceMetricCollector
এর উপরে প্রয়োগ করার সময় আপনি জীবনচক্র চলাকালীন আপনার মেট্রিক্স কখন সংগ্রহ করবেন তা নির্ধারণ করতে পারেন:
- যখন একটি পরীক্ষা চালানো শুরু হয়:
onTestRunStart
- যখন একটি পরীক্ষার কেস শুরু হয়:
onTestStart
- যখন একটি পরীক্ষার কেস শেষ হয়:
onTestEnd
- যখন একটি পরীক্ষা চালানো শেষ হয়:
onTestRunEnd
সিঙ্ক্রোনাস পদ্ধতিগুলি ছাড়াও, TF একটি বেস ক্লাস প্রদান করে যা পর্যায়ক্রমিক অ্যাসিঙ্ক্রোনাস সংগ্রহ সম্পাদন করে, ScheduledDeviceMetricCollector
, যা পর্যায়ক্রমিকভাবে চালানোর জন্য একটি collect
পদ্ধতি প্রদান করে।
সময়কাল বিকল্প দ্বারা কাস্টমাইজযোগ্য।
XML কনফিগারেশন
অবজেক্ট ট্যাগ হল metrics_collector
, উদাহরণস্বরূপ:
<metrics_collector class="com.android.tradefed.device.metric.AtraceCollector">
<option name="categories" value="freq"/>
</metrics_collector>
সুপারিশ
আপনি কাজের নকল করছেন না তা নিশ্চিত করতে সংগ্রাহকদের বিদ্যমান তালিকাটি দেখুন। আমরা সর্বোচ্চ পুনঃব্যবহারযোগ্যতা নিশ্চিত করার চেষ্টা করি, তাই প্রতিটি সংগ্রাহককে একক ধরনের সংগ্রহ সম্পাদন করার ফলে পরীক্ষা সম্পাদনের সময় বিভিন্ন সংগ্রাহককে আরও মিশ্রিত এবং মিল করার অনুমতি দেয়।
এই পৃষ্ঠার কন্টেন্ট ও কোডের নমুনাগুলি Content License-এ বর্ণিত লাইসেন্সের অধীনস্থ। Java এবং OpenJDK হল Oracle এবং/অথবা তার অ্যাফিলিয়েট সংস্থার রেজিস্টার্ড ট্রেডমার্ক।
2025-07-29 UTC-তে শেষবার আপডেট করা হয়েছে।
[[["সহজে বোঝা যায়","easyToUnderstand","thumb-up"],["আমার সমস্যার সমাধান হয়েছে","solvedMyProblem","thumb-up"],["অন্যান্য","otherUp","thumb-up"]],[["এতে আমার প্রয়োজনীয় তথ্য নেই","missingTheInformationINeed","thumb-down"],["খুব জটিল / অনেক ধাপ","tooComplicatedTooManySteps","thumb-down"],["পুরনো","outOfDate","thumb-down"],["অনুবাদ সংক্রান্ত সমস্যা","translationIssue","thumb-down"],["নমুনা / কোড সংক্রান্ত সমস্যা","samplesCodeIssue","thumb-down"],["অন্যান্য","otherDown","thumb-down"]],["2025-07-29 UTC-তে শেষবার আপডেট করা হয়েছে।"],[],[],null,["# Host-driven metrics collectors run on the host and not on the device side. They\ninteract with the device from the host side to collect the metrics they are\ntargeting.\n\nMetrics collector design\n------------------------\n\nThe base class that all collectors extend is\n[`BaseDeviceMetricCollector`](https://android.googlesource.com/platform/tools/tradefederation/+/refs/heads/android16-release/src/com/android/tradefed/device/metric/BaseDeviceMetricCollector.java),\nwhich helps provide the same shared basic functionalities:\n\n- Filtering\n- Disabling\n- Collection on test cases versus test runs\n\nCollectors follow a [result reporter](/docs/core/tests/tradefed/architecture/result-reporter)\nmodel because they synchronize with the test execution on the host. In other\nwords, if tests are host-driven, collectors are executed before the test\nproceeds to the next execution step.\n\nFor example, if the collector executes on `testEnded`, the collectors execute\nbefore the execution proceeds to the next test with `testStart`.\n\nImplement a host-driven metrics collector\n-----------------------------------------\n\nWhen implementing on top of the base class `BaseDeviceMetricCollector` you\ncan decide when to collect your metrics during the lifecycle:\n\n- When a test run starts: `onTestRunStart`\n- When a test case starts: `onTestStart`\n- When a test case ends: `onTestEnd`\n- When a test run ends: `onTestRunEnd`\n\nPerform asynchronous collection\n-------------------------------\n\nIn addition to the synchronous methods, TF provides a base class to implement\nthat performs periodic asynchronous collection,\n[`ScheduledDeviceMetricCollector`](https://android.googlesource.com/platform/tools/tradefederation/+/refs/heads/android16-release/test_framework/com/android/tradefed/device/metric/ScheduledDeviceMetricCollector.java),\nwhich provides a `collect` method to be implemented that runs\nperiodically.\n\nThe period is customizable by options.\n\nXML configuration\n-----------------\n\nThe object tag is `metrics_collector`, for example: \n\n \u003cmetrics_collector class=\"com.android.tradefed.device.metric.AtraceCollector\"\u003e\n \u003coption name=\"categories\" value=\"freq\"/\u003e\n \u003c/metrics_collector\u003e\n\nRecommendations\n---------------\n\nLook at the [existing list of collectors](https://android.googlesource.com/platform/tools/tradefederation/+/refs/heads/android16-release/test_framework/com/android/tradefed/device/metric)\nto ensure you aren't duplicating work. We try to ensure maximum reusability, so\nhaving each collector performing a single type of collection allows more mixing\nand matching of different collectors during test execution."]]