সূচক
-
BadRequest(বার্তা) -
BadRequest.FieldViolation(বার্তা) -
Code(এনাম) -
ErrorInfo(বার্তা) -
Help(বার্তা) -
Help.Link(বার্তা) -
LocalizedMessage(বার্তা) -
RequestInfo(বার্তা) -
Status(বার্তা)
খারাপ অনুরোধ
ক্লায়েন্টের অনুরোধে লঙ্ঘনের বর্ণনা দেয়। এই ত্রুটির ধরণটি অনুরোধের সিনট্যাকটিক দিকগুলিতে ফোকাস করে।
| ক্ষেত্র | |
|---|---|
field_violations[] | ক্লায়েন্টের অনুরোধে সমস্ত লঙ্ঘনের বর্ণনা দেয়। |
ক্ষেত্র লঙ্ঘন
একটি খারাপ অনুরোধ ক্ষেত্র বর্ণনা করতে ব্যবহৃত একটি বার্তার ধরণ।
| ক্ষেত্র | |
|---|---|
field | একটি পথ যা অনুরোধের মূল অংশের একটি ক্ষেত্রের দিকে নিয়ে যায়। মানটি হবে ডট-বিচ্ছিন্ন শনাক্তকারীদের একটি ক্রম যা একটি প্রোটোকল বাফার ক্ষেত্র সনাক্ত করে। নিম্নলিখিত বিষয়গুলি বিবেচনা করুন: এই উদাহরণে, প্রোটো
JSON-এ, একই মানগুলি নিম্নরূপে উপস্থাপিত হয়:
|
description | অনুরোধের উপাদানটি কেন খারাপ তার একটি বর্ণনা। |
reason | ফিল্ড-লেভেল ত্রুটির কারণ। এটি একটি ধ্রুবক মান যা ফিল্ড-লেভেল ত্রুটির নিকটতম কারণ চিহ্নিত করে। এটি google.rpc.ErrorInfo.domain এর সুযোগের মধ্যে FieldViolation এর ধরণটি অনন্যভাবে সনাক্ত করবে। এটি সর্বাধিক 63 টি অক্ষরের হওয়া উচিত এবং |
localized_message | ফিল্ড-লেভেল ত্রুটির জন্য একটি স্থানীয় ত্রুটি বার্তা প্রদান করে যা API গ্রাহকের কাছে ফেরত পাঠানো নিরাপদ। |
কোড
gRPC API-এর জন্য ক্যানোনিকাল ত্রুটি কোড।
কখনও কখনও একাধিক ত্রুটি কোড প্রযোজ্য হতে পারে। পরিষেবাগুলি প্রযোজ্য সবচেয়ে নির্দিষ্ট ত্রুটি কোডটি ফেরত দেবে। উদাহরণস্বরূপ, যদি উভয় কোড প্রযোজ্য হয় তবে FAILED_PRECONDITION এর চেয়ে OUT_OF_RANGE পছন্দ করুন। একইভাবে FAILED_PRECONDITION এর চেয়ে NOT_FOUND বা ALREADY_EXISTS পছন্দ করুন।
| এনামস | |
|---|---|
OK | কোনও ভুল নয়; সাফল্যের সাথে ফিরে এসেছি। HTTP ম্যাপিং: ২০০ ঠিক আছে |
CANCELLED | অপারেশনটি বাতিল করা হয়েছিল, সাধারণত কলকারীর দ্বারা। HTTP ম্যাপিং: 499 ক্লায়েন্ট ক্লোজড রিকোয়েস্ট |
UNKNOWN | অজানা ত্রুটি। উদাহরণস্বরূপ, এই ত্রুটিটি তখনই ফিরে আসতে পারে যখন অন্য ঠিকানা স্থান থেকে প্রাপ্ত একটি HTTP ম্যাপিং: ৫০০ অভ্যন্তরীণ সার্ভার ত্রুটি |
INVALID_ARGUMENT | ক্লায়েন্ট একটি অবৈধ আর্গুমেন্ট নির্দিষ্ট করেছে। মনে রাখবেন এটি HTTP ম্যাপিং: 400 খারাপ অনুরোধ |
DEADLINE_EXCEEDED | অপারেশনটি সম্পূর্ণ হওয়ার আগেই সময়সীমা শেষ হয়ে গেছে। সিস্টেমের অবস্থা পরিবর্তনকারী অপারেশনগুলির জন্য, অপারেশনটি সফলভাবে সম্পন্ন হলেও এই ত্রুটিটি ফিরে আসতে পারে। উদাহরণস্বরূপ, একটি সার্ভার থেকে একটি সফল প্রতিক্রিয়া সময়সীমা শেষ হওয়ার জন্য যথেষ্ট বিলম্বিত হতে পারে। HTTP ম্যাপিং: ৫০৪ গেটওয়ে টাইমআউট |
NOT_FOUND | কিছু অনুরোধকৃত সত্তা (যেমন, ফাইল বা ডিরেক্টরি) পাওয়া যায়নি। সার্ভার ডেভেলপারদের জন্য নোট: যদি ব্যবহারকারীদের একটি সম্পূর্ণ শ্রেণীর জন্য কোনও অনুরোধ প্রত্যাখ্যান করা হয়, যেমন ধীরে ধীরে বৈশিষ্ট্য রোলআউট বা নথিভুক্ত নয় এমন অ্যালোলিস্ট, তাহলে HTTP ম্যাপিং: 404 পাওয়া যায়নি |
ALREADY_EXISTS | ক্লায়েন্ট যে সত্তাটি তৈরি করার চেষ্টা করেছিল (যেমন, ফাইল বা ডিরেক্টরি) তা ইতিমধ্যেই বিদ্যমান। HTTP ম্যাপিং: 409 দ্বন্দ্ব |
PERMISSION_DENIED | কলকারীর নির্দিষ্ট ক্রিয়াকলাপটি সম্পাদন করার অনুমতি নেই। কিছু রিসোর্স ক্লান্ত করার কারণে প্রত্যাখ্যানের ক্ষেত্রে HTTP ম্যাপিং: 403 নিষিদ্ধ |
UNAUTHENTICATED | অনুরোধটিতে ক্রিয়াকলাপের জন্য বৈধ প্রমাণীকরণ শংসাপত্র নেই। HTTP ম্যাপিং: 401 অননুমোদিত |
RESOURCE_EXHAUSTED | কিছু রিসোর্স শেষ হয়ে গেছে, সম্ভবত প্রতি ব্যবহারকারীর কোটা, অথবা সম্ভবত পুরো ফাইল সিস্টেমে জায়গা নেই। HTTP ম্যাপিং: ৪২৯টি অনেক বেশি অনুরোধ |
FAILED_PRECONDITION | অপারেশনটি বাতিল করা হয়েছে কারণ সিস্টেমটি অপারেশনটি সম্পাদনের জন্য প্রয়োজনীয় অবস্থায় নেই। উদাহরণস্বরূপ, যে ডিরেক্টরিটি মুছে ফেলা হবে তা খালি নয়, একটি rmdir অপারেশন একটি নন-ডিরেক্টরিতে প্রয়োগ করা হয়েছে, ইত্যাদি। পরিষেবা বাস্তবায়নকারীরা নিম্নলিখিত নির্দেশিকাগুলি ব্যবহার করে HTTP ম্যাপিং: 400 খারাপ অনুরোধ |
ABORTED | অপারেশনটি বাতিল করা হয়েছিল, সাধারণত সিকোয়েন্সার চেক ব্যর্থতা বা লেনদেন বাতিলের মতো একটি কনকারেন্সি সমস্যার কারণে। HTTP ম্যাপিং: 409 দ্বন্দ্ব |
OUT_OF_RANGE | বৈধ পরিসর অতিক্রম করে অপারেশনটি করার চেষ্টা করা হয়েছিল। যেমন, ফাইলের শেষের দিকে খোঁজা বা পড়া। HTTP ম্যাপিং: 400 খারাপ অনুরোধ |
UNIMPLEMENTED | এই পরিষেবাটিতে অপারেশনটি বাস্তবায়িত হয়নি অথবা সমর্থিত/সক্রিয় নয়। HTTP ম্যাপিং: 501 বাস্তবায়িত হয়নি |
INTERNAL | অভ্যন্তরীণ ত্রুটি। এর অর্থ হল অন্তর্নিহিত সিস্টেম দ্বারা প্রত্যাশিত কিছু ইনভেরিয়েন্ট ভেঙে গেছে। এই ত্রুটি কোডটি গুরুতর ত্রুটির জন্য সংরক্ষিত। HTTP ম্যাপিং: ৫০০ অভ্যন্তরীণ সার্ভার ত্রুটি |
UNAVAILABLE | পরিষেবাটি বর্তমানে অনুপলব্ধ। এটি সম্ভবত একটি ক্ষণস্থায়ী অবস্থা, যা ব্যাকঅফ দিয়ে পুনরায় চেষ্টা করে সংশোধন করা যেতে পারে। মনে রাখবেন যে অ-ইডেম্পটেন্ট অপারেশনগুলি পুনরায় চেষ্টা করা সবসময় নিরাপদ নয়। HTTP ম্যাপিং: 503 পরিষেবা অনুপলব্ধ |
DATA_LOSS | অপ্রত্যাশিত তথ্য ক্ষতি বা দুর্নীতি। HTTP ম্যাপিং: ৫০০ অভ্যন্তরীণ সার্ভার ত্রুটি |
ত্রুটি তথ্য
কাঠামোগত বিবরণ সহ ত্রুটির কারণ বর্ণনা করে।
"pubsub.googleapis.com" API সক্রিয় না থাকাকালীন যোগাযোগ করার সময় একটি ত্রুটির উদাহরণ:
{ "reason": "API_DISABLED"
"domain": "googleapis.com"
"metadata": {
"resource": "projects/123",
"service": "pubsub.googleapis.com"
}
}
এই উত্তরটি ইঙ্গিত করে যে pubsub.googleapis.com API সক্রিয় নেই।
স্টক শেষ হয়ে যাওয়া কোনও অঞ্চলে স্প্যানার ইনস্ট্যান্স তৈরি করার চেষ্টা করার সময় যে ত্রুটি দেখা দেয় তার উদাহরণ:
{ "reason": "STOCKOUT"
"domain": "spanner.googleapis.com",
"metadata": {
"availableRegions": "us-central1,us-east2"
}
}
| ক্ষেত্র | |
|---|---|
reason | ত্রুটির কারণ। এটি একটি ধ্রুবক মান যা ত্রুটির নিকটতম কারণ চিহ্নিত করে। ত্রুটির কারণগুলি ত্রুটির একটি নির্দিষ্ট ডোমেনের মধ্যে অনন্য। এটি সর্বাধিক 63 অক্ষরের হওয়া উচিত এবং |
domain | "কারণ" যে লজিক্যাল গ্রুপিংয়ের সাথে সম্পর্কিত। ত্রুটি ডোমেনটি সাধারণত সেই টুল বা পণ্যের নিবন্ধিত পরিষেবার নাম যা ত্রুটি তৈরি করে। উদাহরণ: "pubsub.googleapis.com"। যদি ত্রুটিটি কিছু সাধারণ অবকাঠামো দ্বারা তৈরি হয়, তাহলে ত্রুটি ডোমেনটি অবশ্যই একটি বিশ্বব্যাপী অনন্য মান হতে হবে যা পরিকাঠামো সনাক্ত করে। Google API অবকাঠামোর জন্য, ত্রুটি ডোমেনটি হল "googleapis.com"। |
metadata | এই ত্রুটি সম্পর্কে অতিরিক্ত কাঠামোগত বিবরণ। কীগুলি অবশ্যই |
সাহায্য
ডকুমেন্টেশনের লিঙ্ক অথবা ব্যান্ডের বাইরের কোনও অ্যাকশন সম্পাদনের জন্য লিঙ্ক প্রদান করে।
উদাহরণস্বরূপ, যদি একটি কোটা চেক ব্যর্থ হয় যেখানে একটি ত্রুটি নির্দেশ করে যে কলিং প্রকল্পটি অ্যাক্সেস করা পরিষেবা সক্ষম করেনি, তাহলে এতে একটি URL থাকতে পারে যা বিটটি উল্টানোর জন্য ডেভেলপার কনসোলের সঠিক স্থানে সরাসরি নির্দেশ করে।
| ক্ষেত্র | |
|---|---|
links[] | বর্তমান ত্রুটি পরিচালনার বিষয়ে অতিরিক্ত তথ্য নির্দেশ করে এমন URL(গুলি)। |
লিংক
একটি URL লিঙ্ক বর্ণনা করে।
| ক্ষেত্র | |
|---|---|
description | লিঙ্কটি কী অফার করে তা বর্ণনা করে। |
url | লিঙ্কটির URL। |
স্থানীয় বার্তা
একটি স্থানীয় ত্রুটি বার্তা প্রদান করে যা ব্যবহারকারীর কাছে ফেরত পাঠানো নিরাপদ যা একটি RPC ত্রুটির সাথে সংযুক্ত করা যেতে পারে।
| ক্ষেত্র | |
|---|---|
locale | https://www.rfc-editor.org/rfc/bcp/bcp47.txt এ সংজ্ঞায়িত স্পেসিফিকেশন অনুসরণ করে ব্যবহৃত লোকেল। উদাহরণ হল: "en-US", "fr-CH", "es-MX" |
message | উপরের লোকেলে স্থানীয়কৃত ত্রুটি বার্তা। |
তথ্য অনুরোধ করুন
বাগ ফাইল করার সময় বা অন্যান্য ধরণের প্রতিক্রিয়া প্রদানের সময় ক্লায়েন্টরা যে অনুরোধটি সংযুক্ত করতে পারে তার মেটাডেটা রয়েছে।
| ক্ষেত্র | |
|---|---|
request_id | একটি অস্বচ্ছ স্ট্রিং যা কেবলমাত্র পরিষেবাটি তৈরি করে তার দ্বারা ব্যাখ্যা করা উচিত। উদাহরণস্বরূপ, এটি পরিষেবার লগে অনুরোধগুলি সনাক্ত করতে ব্যবহার করা যেতে পারে। |
serving_data | এই অনুরোধটি পূরণ করতে ব্যবহৃত যেকোনো ডেটা। উদাহরণস্বরূপ, একটি এনক্রিপ্ট করা স্ট্যাক ট্রেস যা ডিবাগিংয়ের জন্য পরিষেবা প্রদানকারীর কাছে ফেরত পাঠানো যেতে পারে। |
অবস্থা
Status টাইপ একটি লজিক্যাল এরর মডেলকে সংজ্ঞায়িত করে যা REST API এবং RPC API সহ বিভিন্ন প্রোগ্রামিং পরিবেশের জন্য উপযুক্ত। এটি gRPC দ্বারা ব্যবহৃত হয়। প্রতিটি Status বার্তায় তিনটি ডেটা থাকে: ত্রুটি কোড, ত্রুটি বার্তা এবং ত্রুটির বিবরণ।
এই ত্রুটি মডেল এবং এটির সাথে কীভাবে কাজ করবেন সে সম্পর্কে আপনি API ডিজাইন গাইডে আরও জানতে পারবেন।
| ক্ষেত্র | |
|---|---|
code | স্ট্যাটাস কোড, যা |
message | ডেভেলপার-মুখোমুখি ত্রুটির বার্তা, যা ইংরেজিতে হওয়া উচিত। ব্যবহারকারী-মুখোমুখি যেকোনো ত্রুটির বার্তা স্থানীয়করণ করে |
details[] | ত্রুটির বিবরণ বহনকারী বার্তাগুলির একটি তালিকা। API গুলির ব্যবহারের জন্য বার্তার ধরণের একটি সাধারণ সেট রয়েছে। |