এমনকি সবচেয়ে অভিজ্ঞ বিকাশকারীও খুব কমই প্রথম চেষ্টায় সঠিকভাবে কোড লেখেন, সমস্যা সমাধানকে উন্নয়ন প্রক্রিয়ার একটি গুরুত্বপূর্ণ অংশ করে তোলে। এই বিভাগে আমরা কিছু কৌশল কভার করব যা আপনাকে আপনার স্ক্রিপ্টগুলিতে ত্রুটিগুলি খুঁজে পেতে, বুঝতে এবং ডিবাগ করতে সাহায্য করতে পারে৷
ত্রুটি বার্তা
যখন আপনার স্ক্রিপ্ট একটি ত্রুটি সম্মুখীন হয়, একটি ত্রুটি বার্তা প্রদর্শিত হয়. বার্তাটির সাথে সমস্যা সমাধানের জন্য ব্যবহৃত একটি লাইন নম্বর রয়েছে৷ এইভাবে দুটি মৌলিক ধরনের ত্রুটি প্রদর্শিত হয়: সিনট্যাক্স ত্রুটি এবং রানটাইম ত্রুটি ।
সিনট্যাক্স ত্রুটি
সিনট্যাক্স ত্রুটিগুলি জাভাস্ক্রিপ্ট ব্যাকরণ অনুসরণ করে না এমন কোড লেখার কারণে ঘটে এবং আপনি স্ক্রিপ্ট সংরক্ষণ করার চেষ্টা করার সাথে সাথে ত্রুটিগুলি সনাক্ত করা হয়। উদাহরণস্বরূপ, নিম্নলিখিত কোড স্নিপেটে একটি সিনট্যাক্স ত্রুটি রয়েছে:
function emailDataRow(rowNumber) {
var sheet = SpreadsheetApp.getActiveSheet();
var data = sheet.getDataRange().getValues();
var rowData = data[rowNumber-1].join(" ";
MailApp.sendEmail('[email protected]',
'Data in row ' + rowNumber,
rowData);
}
এখানে সিনট্যাক্স সমস্যাটি চতুর্থ লাইনের শেষে একটি অনুপস্থিত )
অক্ষর। আপনি যখন স্ক্রিপ্টটি সংরক্ষণ করার চেষ্টা করবেন তখন আপনি নিম্নলিখিত ত্রুটিটি পাবেন:
আর্গুমেন্ট তালিকার পরে ) অনুপস্থিত। (লাইন 4)
এই ধরনের ত্রুটিগুলি সাধারণত সমস্যা সমাধান করা সহজ, কারণ সেগুলি এখনই পাওয়া যায় এবং সাধারণত সহজ কারণ থাকে৷ আপনি এমন একটি ফাইল সংরক্ষণ করতে পারবেন না যাতে সিনট্যাক্স ত্রুটি রয়েছে, যার অর্থ আপনার প্রকল্পে শুধুমাত্র বৈধ কোড সংরক্ষণ করা হয়েছে।
রানটাইম ত্রুটি
এই ত্রুটিগুলি একটি ফাংশন বা ক্লাস ভুলভাবে ব্যবহার করার কারণে সৃষ্ট হয় এবং স্ক্রিপ্টটি চালানোর পরেই এটি সনাক্ত করা যায়। উদাহরণস্বরূপ, নিম্নলিখিত কোডটি একটি রানটাইম ত্রুটি সৃষ্টি করে:
function emailDataRow(rowNumber) {
var sheet = SpreadsheetApp.getActiveSheet();
var data = sheet.getDataRange().getValues();
var rowData = data[rowNumber-1].join(" ");
MailApp.sendEmail('john',
'Data in row ' + rowNumber,
rowData);
}
কোডটি সঠিকভাবে ফরম্যাট করা হয়েছে, কিন্তু MailApp.sendEmail
কল করার সময় আমরা ইমেল ঠিকানার জন্য "জন" মানটি পাস করছি। যেহেতু এটি একটি বৈধ ইমেল ঠিকানা নয় স্ক্রিপ্টটি চালানোর সময় নিম্নলিখিত ত্রুটিটি নিক্ষেপ করা হয়:
অবৈধ ইমেল: জন (লাইন 5)
সমস্যা সমাধানের জন্য এই ত্রুটিগুলিকে আরও চ্যালেঞ্জিং করে তোলে তা হল যে প্রায়শই আপনি একটি ফাংশনে যে ডেটা পাস করছেন তা কোডে লেখা হয় না, বরং স্প্রেডশীট, ফর্ম বা অন্যান্য বাহ্যিক ডেটা উত্স থেকে টানা হয়৷ নীচের ডিবাগিং কৌশলগুলি ব্যবহার করে আপনাকে এই ত্রুটিগুলির কারণ সনাক্ত করতে সাহায্য করতে পারে৷
সাধারণ ত্রুটি
নীচে সাধারণ ত্রুটি এবং তাদের কারণগুলির একটি তালিকা রয়েছে৷
পরিষেবাটি অনেকবার আহ্বান করা হয়েছে: <অ্যাকশন নাম>
এই ত্রুটিটি নির্দেশ করে যে আপনি একটি প্রদত্ত কর্মের জন্য আপনার দৈনিক কোটা অতিক্রম করেছেন৷ উদাহরণস্বরূপ, আপনি যদি এক দিনে অনেকগুলি ইমেল পাঠান তবে আপনি এই ত্রুটির সম্মুখীন হতে পারেন৷ কোটাগুলি ভোক্তা, ডোমেন এবং প্রিমিয়ার অ্যাকাউন্টগুলির জন্য বিভিন্ন স্তরে সেট করা হয়েছে এবং Google দ্বারা পূর্ব ঘোষণা ছাড়াই যে কোনো সময় পরিবর্তন হতে পারে৷ আপনি Apps স্ক্রিপ্ট কোটা ডকুমেন্টেশনে বিভিন্ন কর্মের জন্য কোটা সীমা দেখতে পারেন।
সার্ভার উপলব্ধ নয়। অথবা সার্ভার ত্রুটি ঘটেছে, আবার চেষ্টা করুন.
এই ত্রুটিগুলির জন্য কয়েকটি সম্ভাব্য কারণ রয়েছে:
- একটি Google সার্ভার বা সিস্টেম সাময়িকভাবে অনুপলব্ধ৷ কয়েক মুহূর্ত অপেক্ষা করুন এবং আবার স্ক্রিপ্ট চালানোর চেষ্টা করুন।
- আপনার স্ক্রিপ্টে একটি ত্রুটি রয়েছে যার সাথে সংশ্লিষ্ট ত্রুটি বার্তা নেই৷ আপনার স্ক্রিপ্ট ডিবাগ করার চেষ্টা করুন এবং দেখুন আপনি সমস্যাটি আলাদা করতে পারেন কিনা।
- Google Apps স্ক্রিপ্টে একটি বাগ রয়েছে যা এই ত্রুটিটি ঘটাচ্ছে৷ বাগ রিপোর্ট অনুসন্ধান এবং ফাইল করার নির্দেশাবলীর জন্য, বাগগুলি দেখুন। একটি নতুন বাগ ফাইল করার আগে, অন্যরা ইতিমধ্যে এটি রিপোর্ট করেছে কিনা তা দেখতে অনুসন্ধান করুন৷
সেই ক্রিয়া সম্পাদনের জন্য অনুমোদন প্রয়োজন৷
এই ত্রুটিটি নির্দেশ করে যে স্ক্রিপ্টটি চালানোর জন্য প্রয়োজনীয় অনুমোদনের অভাব রয়েছে৷ যখন একটি স্ক্রিপ্ট স্ক্রিপ্ট এডিটরে বা একটি কাস্টম মেনু আইটেম থেকে চালানো হয় তখন ব্যবহারকারীর কাছে একটি অনুমোদন ডায়ালগ উপস্থাপন করা হয়। যাইহোক, যখন একটি স্ক্রিপ্ট একটি ট্রিগার থেকে চালানো হয়, একটি Google সাইট পৃষ্ঠার সাথে এমবেড করা হয়, বা একটি পরিষেবা হিসাবে চালানো হয়, তখন ডায়ালগটি উপস্থাপন করা যায় না এবং এই ত্রুটিটি দেখানো হয়৷
স্ক্রিপ্ট অনুমোদন করতে, স্ক্রিপ্ট এডিটর খুলুন এবং যেকোনো ফাংশন চালান। অনুমোদন প্রম্পট প্রদর্শিত হয় যাতে আপনি স্ক্রিপ্ট প্রকল্প অনুমোদন করতে পারেন। যদি স্ক্রিপ্টে নতুন অননুমোদিত পরিষেবা থাকে, তাহলে আপনাকে অবশ্যই স্ক্রিপ্টটি পুনরায় অনুমোদন করতে হবে।
এই ত্রুটিটি প্রায়শই এমন ট্রিগারগুলির কারণে ঘটে যা ব্যবহারকারীর অনুমোদন দেওয়ার আগে ফায়ার করছে৷ যদি আপনার স্ক্রিপ্ট প্রকল্পে অ্যাক্সেস না থাকে (যেহেতু আপনি যে অ্যাড-অন ব্যবহার করেন তার জন্য ত্রুটি ঘটছে, উদাহরণস্বরূপ), আপনি সাধারণত আবার অ্যাড-অন ব্যবহার করে স্ক্রিপ্টটিকে অনুমোদন করতে পারেন। যদি একটি ট্রিগার ক্রমাগত ফায়ার করে এবং এই ত্রুটির কারণ হয়, তাহলে আপনি নিম্নলিখিতগুলি করে আপনার ট্রিগারগুলি সরাতে পারেন:
- অ্যাপস স্ক্রিপ্ট প্রকল্পের বাম দিকে, ট্রিগার ক্লিক করুন।
- আপনি যে ট্রিগারটি সরাতে চান তার ডানদিকে, More > ট্রিগার মুছুন ক্লিক করুন।
আপনি অ্যাড-অন আনইনস্টল করে সমস্যাযুক্ত অ্যাড-অন ট্রিগারগুলিও সরাতে পারেন।
অ্যাক্সেস অস্বীকৃত: DriveApp বা ডোমেন নীতি তৃতীয় পক্ষের ড্রাইভ অ্যাপগুলিকে অক্ষম করেছে৷
এর প্রশাসক Google Workspace ডোমেনগুলির তাদের ডোমেনের জন্য ড্রাইভ এপিআই নিষ্ক্রিয় করার ক্ষমতা রয়েছে, যা তাদের ব্যবহারকারীদের Google ড্রাইভ অ্যাপগুলি ইনস্টল এবং ব্যবহার করতে বাধা দেয়৷ এই সেটিং ব্যবহারকারীদের ড্রাইভ পরিষেবা বা উন্নত ড্রাইভ পরিষেবা ব্যবহার করে এমন Apps স্ক্রিপ্ট অ্যাড-অনগুলি ব্যবহার করতে সক্ষম হতে বাধা দেয় (এমনকি যদি স্ক্রিপ্টটি ড্রাইভ API নিষ্ক্রিয় করার আগে প্রশাসক অনুমোদিত ছিল)৷
যাইহোক, যদি ড্রাইভ পরিষেবা ব্যবহার করে একটি অ্যাড-অন বা ওয়েব অ্যাপ ডোমেন-ব্যাপী ইনস্টলেশনের জন্য প্রকাশিত হয় এবং ডোমেনের কিছু বা সমস্ত ব্যবহারকারীর জন্য অ্যাডমিনিস্ট্রেটর দ্বারা ইনস্টল করা হয়, ড্রাইভ API অক্ষম করা থাকলেও স্ক্রিপ্ট সেই ব্যবহারকারীদের জন্য কাজ করে ডোমেইন
সক্রিয় ব্যবহারকারীর পরিচয় পাওয়ার জন্য স্ক্রিপ্টের অনুমতি নেই।
নির্দেশ করে যে সক্রিয় ব্যবহারকারীর পরিচয় এবং ইমেল স্ক্রিপ্টে উপলব্ধ নয়। এই সতর্কবার্তাটি Session.getActiveUser()
এ একটি কলের ফলে। এটি Session.getEffectiveUser()
এ কলের ফলেও হতে পারে যদি স্ক্রিপ্টটি AuthMode.FULL
ছাড়া অন্য কোনো অনুমোদন মোডে চলছে। যদি এই সতর্কতা সংকেত করা হয়, User.getEmail()
এ পরবর্তী কলগুলি শুধুমাত্র "" ফেরত দেয়।
স্ক্রিপ্টটি যে অনুমোদনের মোডের অধীনে চলছে তার উপর নির্ভর করে এই সতর্কতার সমস্যা সমাধানের অনেক উপায় রয়েছে। অনুমোদনের মোডটি e
ইভেন্ট প্যারামিটারের authMode
বৈশিষ্ট্য হিসাবে ট্রিগার করা ফাংশনে উন্মুক্ত করা হয়।
-
AuthMode.FULL
এ, পরিবর্তেSession.getEffectiveUser()
ব্যবহার করার কথা বিবেচনা করুন। -
AuthMode.LIMITED
এ, নিশ্চিত করুন যে মালিক স্ক্রিপ্টটি অনুমোদন করেছেন৷ - অন্যান্য অনুমোদনের মোডে, যেকোনো পদ্ধতিতে কল করা এড়িয়ে চলুন।
- আপনি যদি a Google Workspace গ্রাহক নতুন একটি ইনস্টলযোগ্য ট্রিগার থেকে এই সতর্কতাটি অনুভব করছেন, নিশ্চিত করুন যে ট্রিগারটি আপনার প্রতিষ্ঠানের মধ্যে একজন ব্যবহারকারী হিসাবে চলছে।
লাইব্রেরি অনুপস্থিত
আপনি যদি আপনার স্ক্রিপ্টে একটি জনপ্রিয় লাইব্রেরি যোগ করেন, আপনি একটি ত্রুটি বার্তা পেতে পারেন যে এটি অনুপস্থিত, যদিও লাইব্রেরিটি আপনার স্ক্রিপ্টের জন্য একটি নির্ভরতা হিসাবে তালিকাভুক্ত করা হয়েছে৷ কারণ হতে পারে যে অনেক লোক একই সময়ে লাইব্রেরিতে প্রবেশ করছে। এই ত্রুটি এড়াতে, নিম্নলিখিত সমাধানগুলির মধ্যে একটি চেষ্টা করুন:
- আপনার স্ক্রিপ্টে লাইব্রেরির কোড কপি করুন এবং পেস্ট করুন এবং লাইব্রেরি নির্ভরতা মুছে ফেলুন।
- লাইব্রেরি স্ক্রিপ্টটি অনুলিপি করুন এবং আপনার অ্যাকাউন্ট থেকে এটিকে একটি লাইব্রেরি হিসাবে স্থাপন করুন। আপনার মূল স্ক্রিপ্টে নির্ভরতাকে সর্বজনীনের পরিবর্তে নতুন লাইব্রেরিতে আপডেট করতে ভুলবেন না।
একটি অনুপস্থিত লাইব্রেরি সংস্করণ বা একটি স্থাপনার সংস্করণের কারণে ত্রুটি ঘটেছে৷ ত্রুটি কোড Not_Found
এই ত্রুটি বার্তাটি নিম্নলিখিতগুলির মধ্যে একটি নির্দেশ করে:
- স্ক্রিপ্টের স্থাপন করা সংস্করণ মুছে ফেলা হয়েছে৷ আপনার স্ক্রিপ্টের স্থাপন করা সংস্করণ আপডেট করতে, একটি সংস্করণ স্থাপনা সম্পাদনা দেখুন।
- স্ক্রিপ্ট ব্যবহার করে এমন একটি লাইব্রেরির সংস্করণ মুছে ফেলা হয়েছে। কোন লাইব্রেরি অনুপস্থিত তা পরীক্ষা করতে, লাইব্রেরির নামের পাশে, > নতুন ট্যাবে খুলুন ক্লিক করুন। অনুপস্থিত লাইব্রেরি একটি ত্রুটি বার্তা দেয়। আপনি যে লাইব্রেরিটি আপডেট করতে হবে তা খুঁজে পাওয়ার পরে, নিম্নলিখিত পদক্ষেপগুলির মধ্যে একটি নিন:
- একটি ভিন্ন সংস্করণ ব্যবহার করতে লাইব্রেরি আপডেট করুন. একটি লাইব্রেরি আপডেট দেখুন।
- আপনার স্ক্রিপ্ট প্রকল্প এবং কোড থেকে মুছে ফেলা লাইব্রেরি সরান. একটি লাইব্রেরি সরান দেখুন।
More - আপনার স্ক্রিপ্ট ব্যবহার করে এমন একটি লাইব্রেরির স্ক্রিপ্টে অন্য একটি লাইব্রেরি রয়েছে যা একটি মুছে ফেলা সংস্করণ ব্যবহার করে। নিম্নলিখিত ক্রিয়াগুলির মধ্যে একটি নিন:
- আপনার স্ক্রিপ্ট ব্যবহার করে লাইব্রেরিতে সম্পাদনা করার অ্যাক্সেস থাকলে, সেই স্ক্রিপ্টের সেকেন্ডারি লাইব্রেরিটিকে একটি বিদ্যমান সংস্করণে আপডেট করুন।
- একটি ভিন্ন সংস্করণ ব্যবহার করতে লাইব্রেরি আপডেট করুন. একটি লাইব্রেরি আপডেট দেখুন।
- আপনার স্ক্রিপ্ট প্রকল্প এবং কোড থেকে লাইব্রেরি সরান. একটি লাইব্রেরি সরান দেখুন।
ত্রুটি 400: উন্নত পরিষেবার সাথে Google Chat API কল করার সময় invalid_scope
আপনি যদি Error 400: invalid_scope
ত্রুটি বার্তার সম্মুখীন হন Some requested scopes cannot be shown
, এর মানে আপনি Apps Script প্রকল্পের appsscript.json
ফাইলে কোনো অনুমোদনের সুযোগ নির্দিষ্ট করেননি। বেশিরভাগ ক্ষেত্রে, অ্যাপস স্ক্রিপ্ট স্বয়ংক্রিয়ভাবে নির্ধারণ করে যে কোন স্ক্রিপ্টের কোন স্কোপের প্রয়োজন, কিন্তু আপনি যখন চ্যাট উন্নত পরিষেবা ব্যবহার করেন, তখন আপনাকে অবশ্যই ম্যানুয়ালি অনুমোদনের সুযোগ যোগ করতে হবে যা আপনার স্ক্রিপ্ট আপনার অ্যাপস স্ক্রিপ্ট প্রকল্পের ম্যানিফেস্ট ফাইলে ব্যবহার করে। সুস্পষ্ট স্কোপ সেট করা দেখুন।
ত্রুটিটি সমাধান করতে, oauthScopes
অ্যারের অংশ হিসাবে Apps Script প্রকল্পের appsscript.json
ফাইলে যথাযথ অনুমোদনের সুযোগ যোগ করুন। উদাহরণস্বরূপ, spaces.messages.create
পদ্ধতিতে কল করতে, নিম্নলিখিত যোগ করুন:
"oauthScopes": [
"https://www.googleapis.com/auth/chat.messages.create"
]
<URL>-এ UrlFetch কলগুলি আপনার প্রশাসকের দ্বারা অনুমোদিত নয়৷
আপনি Apps স্ক্রিপ্টের মাধ্যমে কোন এক্সটার্নাল ডোমেন অ্যাক্সেস করতে পারবেন তা নিয়ন্ত্রণ করতে Google Workspace অ্যাডমিনিস্ট্রেটররা অ্যাডমিন কনসোলে অনুমতি তালিকা চালু করতে পারেন।
সমস্যা সমাধানের জন্য, আপনার অ্যাডমিনিস্ট্রেটরের সাথে যোগাযোগ করুন যাতে তারা অনুমতি তালিকায় URL যোগ করতে পারে।
ডিবাগিং
সমস্ত ভুলের কারণে একটি ত্রুটি বার্তা প্রদর্শিত হয় না। একটি আরও সূক্ষ্ম ত্রুটি হতে পারে যেখানে কোডটি প্রযুক্তিগতভাবে সঠিক এবং কার্যকর করতে পারে, তবে ফলাফলগুলি আপনি যা আশা করেন তা নয়। এই ধরনের পরিস্থিতি মোকাবেলা করার জন্য এখানে কিছু কৌশল রয়েছে এবং এমন একটি স্ক্রিপ্টের আরও তদন্ত করার জন্য যা আপনার প্রত্যাশা অনুযায়ী চলছে না।
লগিং
ডিবাগ করার সময় এটি একটি স্ক্রিপ্ট প্রকল্প নির্বাহ হিসাবে তথ্য রেকর্ড করা প্রায়ই সহায়ক। তথ্য লগ করার জন্য Google Apps Script-এর দুটি পদ্ধতি রয়েছে: ক্লাউড লগিং পরিষেবা এবং আরও মৌলিক লগার এবং কনসোল পরিষেবা যা অ্যাপস স্ক্রিপ্ট সম্পাদকে অন্তর্নির্মিত।
আরো বিস্তারিত জানার জন্য লগিং গাইড দেখুন.
ত্রুটি রিপোর্টিং
রানটাইম ত্রুটির কারণে ঘটে যাওয়া ব্যতিক্রমগুলি Google ক্লাউড ত্রুটি রিপোর্টিং পরিষেবা ব্যবহার করে স্বয়ংক্রিয়ভাবে রেকর্ড করা হয়৷ এই পরিষেবাটি আপনাকে আপনার স্ক্রিপ্ট প্রকল্প তৈরি করা ব্যতিক্রম বার্তাগুলি অনুসন্ধান এবং ফিল্টার করতে দেয়৷
ত্রুটি প্রতিবেদন অ্যাক্সেস করতে, Google ক্লাউড প্ল্যাটফর্ম কনসোলে ক্লাউড লগ এবং ত্রুটি প্রতিবেদনগুলি দেখুন ।
মৃত্যুদন্ড
প্রতিবার যখন আপনি একটি স্ক্রিপ্ট চালান, Apps স্ক্রিপ্ট ক্লাউড লগ সহ এক্সিকিউশনের একটি রেকর্ড তৈরি করে৷ এই রেকর্ডগুলি আপনাকে বুঝতে সাহায্য করতে পারে যে আপনার স্ক্রিপ্ট কোন ক্রিয়াগুলি সম্পাদন করেছে৷
অ্যাপস স্ক্রিপ্ট প্রজেক্টে আপনার স্ক্রিপ্টের এক্সিকিউশন দেখতে, বাম দিকে, এক্সিকিউশন
ক্লিক করুন।অ্যাপস স্ক্রিপ্ট পরিষেবার স্থিতি পরীক্ষা করা হচ্ছে
যদিও বিরল, কখনও কখনও নির্দিষ্ট Google Workspace পরিষেবাগুলি (যেমন Gmail বা Drive) সাময়িক সমস্যার সম্মুখীন হয় যা পরিষেবা বিভ্রাটের কারণ হতে পারে। যখন এটি ঘটে, তখন এই পরিষেবাগুলির সাথে ইন্টারঅ্যাক্ট করে এমন Apps স্ক্রিপ্ট প্রকল্পগুলি প্রত্যাশিতভাবে কাজ নাও করতে পারে৷
আপনি Google Workspace স্ট্যাটাস ড্যাশবোর্ড দেখে Google Workspace পরিষেবা বিভ্রাট আছে কিনা তা পরীক্ষা করতে পারেন। যদি বর্তমানে কোনো বিভ্রাটের সম্মুখীন হয়, আপনি হয় এটি সমাধানের জন্য অপেক্ষা করুন বা Google Workspace সহায়তা কেন্দ্রে বা Google Workspace পরিচিত সমস্যা সংক্রান্ত ডকুমেন্টেশনে অতিরিক্ত সাহায্য নিন।
ডিবাগার এবং ব্রেকপয়েন্ট ব্যবহার করুন
আপনার স্ক্রিপ্টে সমস্যা সনাক্ত করতে, আপনি এটি ডিবাগ মোডে চালাতে পারেন। যখন ডিবাগ মোডে চালানো হয়, একটি স্ক্রিপ্ট বিরতি দেয় যখন এটি একটি ব্রেকপয়েন্টে আঘাত করে, এটি এমন একটি লাইন যা আপনি আপনার স্ক্রিপ্টে হাইলাইট করেছেন যা আপনার মনে হয় একটি সমস্যা হতে পারে। যখন একটি স্ক্রিপ্ট বিরতি দেয় তখন এটি সেই সময়ে প্রতিটি ভেরিয়েবলের মান প্রদর্শন করে, আপনাকে প্রচুর লগিং বিবৃতি যোগ না করে একটি স্ক্রিপ্টের অভ্যন্তরীণ কাজগুলি পরিদর্শন করার অনুমতি দেয়।
একটি ব্রেকপয়েন্ট যোগ করুন
একটি ব্রেকপয়েন্ট যোগ করতে, আপনি যে লাইনে ব্রেকপয়েন্ট যোগ করতে চান তার লাইন নম্বরের উপর হোভার করুন। লাইন নম্বরের বাম দিকে, বৃত্তে ক্লিক করুন। নীচের চিত্রটি একটি স্ক্রিপ্টে যোগ করা ব্রেকপয়েন্টের একটি উদাহরণ দেখায়:
ডিবাগ মোডে একটি স্ক্রিপ্ট চালান
ডিবাগ মোডে স্ক্রিপ্ট চালানোর জন্য, সম্পাদকের শীর্ষে ডিবাগ এ ক্লিক করুন।
স্ক্রিপ্ট ব্রেকপয়েন্টের সাথে লাইনটি চালানোর আগে এটি বিরাম দেয় এবং ডিবাগ তথ্যের একটি টেবিল প্রদর্শন করে। আপনি প্যারামিটারের মান এবং বস্তুতে সংরক্ষিত তথ্যের মতো ডেটা পরিদর্শন করতে এই টেবিলটি ব্যবহার করতে পারেন।
স্ক্রিপ্টটি কীভাবে চালানো হয় তা নিয়ন্ত্রণ করতে, ডিবাগার প্যানেলের শীর্ষে, "স্টেপ ইন", "স্টেপ ওভার" এবং "স্টেপ আউট" বোতামগুলি ব্যবহার করুন৷ এগুলি আপনাকে একবারে একটি লাইন স্ক্রিপ্ট চালাতে দেয় এবং সময়ের সাথে মানগুলি কীভাবে পরিবর্তিত হয় তা পরিদর্শন করতে দেয়।
একাধিক Google অ্যাকাউন্টের সমস্যা
আপনি যদি একই সময়ে একাধিক Google অ্যাকাউন্টে লগ ইন করে থাকেন, তাহলে আপনার অ্যাড-অন এবং ওয়েব অ্যাপ অ্যাক্সেস করতে আপনার সমস্যা হতে পারে। মাল্টি-লগইন, বা একাধিক Google অ্যাকাউন্টে একবারে লগ ইন করা, অ্যাপস স্ক্রিপ্ট, অ্যাড-অন বা ওয়েব অ্যাপের জন্য সমর্থিত নয়।
আপনি একাধিক অ্যাকাউন্টে লগ ইন করার সময় অ্যাপস স্ক্রিপ্ট এডিটর খুললে , আপনি যে অ্যাকাউন্টটি নিয়ে এগিয়ে যেতে চান তা বেছে নিতে Google আপনাকে অনুরোধ করে।
আপনি যদি একটি ওয়েব অ্যাপ বা অ্যাড-অন খোলেন এবং বহু-লগইন সমস্যার সম্মুখীন হন, তাহলে নিম্নলিখিত সমাধানগুলির মধ্যে একটি চেষ্টা করুন:
- আপনার সমস্ত Google অ্যাকাউন্ট থেকে লগ আউট করুন এবং শুধুমাত্র একটিতে লগ ইন করুন যেটিতে অ্যাড-অন বা ওয়েব অ্যাপ রয়েছে যা আপনি অ্যাক্সেস করতে চান৷
- Google Chrome-এ একটি ছদ্মবেশী উইন্ডো খুলুন, বা একটি সমতুল্য ব্যক্তিগত ব্রাউজিং উইন্ডো খুলুন, এবং আপনি অ্যাক্সেস করতে চান এমন অ্যাড-অন বা ওয়েব অ্যাপ রয়েছে এমন Google অ্যাকাউন্টে লগ ইন করুন৷
সাহায্য পাচ্ছি
উপরে তালিকাভুক্ত সরঞ্জাম এবং কৌশলগুলি ব্যবহার করে একটি সমস্যা ডিবাগ করা বিভিন্ন সমস্যার সমাধান করতে পারে, তবে এমন কিছু সমস্যা থাকতে পারে যার সমাধানের জন্য কিছু অতিরিক্ত সহায়তা প্রয়োজন। কোথায় প্রশ্ন জিজ্ঞাসা করতে হবে এবং বাগ ফাইল করতে হবে সে সম্পর্কে তথ্যের জন্য আমাদের সমর্থন পৃষ্ঠা দেখুন।