ToolDeck

সময়

4 tools

ToolDeck-এর টাইম টুলস আপনাকে Unix টাইমস্ট্যাম্প রূপান্তর করতে, cron expression পার্স করতে, ভিজ্যুয়ালি cron শিডিউল তৈরি করতে এবং সরাসরি আপনার ব্রাউজারে cron সিনট্যাক্স যাচাই করতে দেয়। টাইমস্ট্যাম্প রূপান্তরকারী Unix epoch মান এবং মানব-পাঠযোগ্য তারিখের মধ্যে সকল প্রধান ফরম্যাটে রূপান্তর করে। Cron এক্সপ্রেশন পার্সার cron স্ট্রিং ভেঙে সহজ ভাষায় বর্ণনা এবং আসন্ন এক্সিকিউশন প্রিভিউ দেয়। Cron এক্সপ্রেশন জেনারেটর ম্যানুয়াল সম্পাদনা ছাড়াই ধাপে ধাপে ভিজ্যুয়াল ইন্টারফেসের মাধ্যমে cron expression তৈরি করে। Cron এক্সপ্রেশন ভ্যালিডেটর cron সিনট্যাক্স পরীক্ষা করে এবং প্রতিটি উপাদানের ক্ষেত্র-ভিত্তিক বিশ্লেষণ দেখায়। সমস্ত প্রসেসিং আপনার ব্রাউজারে স্থানীয়ভাবে চলে — কোনো সার্ভার রাউন্ড-ট্রিপ নেই, কোনো অ্যাকাউন্টের প্রয়োজন নেই এবং কোনো ডেটা সংগ্রহ করা হয় না।

লগ বা API থেকে epoch মান অনুবাদ করার সময় টাইমস্ট্যাম্প রূপান্তরকারী ব্যবহার করুন, বিদ্যমান শিডিউল সহজ ভাষায় বোঝার জন্য Cron এক্সপ্রেশন পার্সার ব্যবহার করুন, ভিজ্যুয়ালি নতুন expression তৈরি করতে Cron এক্সপ্রেশন জেনারেটর ব্যবহার করুন, অথবা প্রোডাকশনে ডিপ্লয় করার আগে সিনট্যাক্স যাচাই করতে Cron এক্সপ্রেশন ভ্যালিডেটর ব্যবহার করুন।

টাইম টুলস কী?

টাইম টুলস সেই ব্যবহারিক সমস্যাগুলো সমাধান করে যা ডেভেলপাররা তারিখ, টাইমস্ট্যাম্প এবং শিডিউল করা এক্সিকিউশন নিয়ে কাজ করার সময় মুখোমুখি হন। Unix টাইমস্ট্যাম্প ডেটাবেস কলাম, API প্রতিক্রিয়া, লগ ফাইল এবং JWT দাবিতে দেখা যায়। কোনো ইনসিডেন্টের সময় 1717200000-এর মতো একটি কাঁচা মান পড়তে মানব-পাঠযোগ্য তারিখে রূপান্তর প্রয়োজন। Cron expression CI/CD কনফিগ, Kubernetes ম্যানিফেস্ট এবং সার্ভার crontab-এ দেখা যায়। 0 9 * * 1-5 লেখা এবং নিশ্চিত হওয়া যে এটি সপ্তাহের দিনগুলোতে (এবং সপ্তাহান্তে নয়) সকাল ৯টায় চালু হয়, তার জন্য একটি পার্সার বা ভ্যালিডেটর প্রয়োজন।

টাইম টুলসের আওতায় দুটি পৃথক ক্ষেত্র পড়ে। টাইমস্ট্যাম্প রূপান্তর Unix epoch মান (1970-01-01 00:00:00 UTC থেকে সেকেন্ড বা মিলিসেকেন্ড) এবং ফরম্যাট করা তারিখ স্ট্রিংয়ের মধ্যে অনুবাদ নিয়ে কাজ করে। এর সাথে সম্পর্কিত প্রধান মানদণ্ডগুলো হল ISO 8601 (আন্তর্জাতিক তারিখ/সময় ফরম্যাট, International Organization for Standardization দ্বারা সংজ্ঞায়িত), RFC 3339 (IETF প্রকাশিত ISO 8601-এর ইন্টারনেট প্রোফাইল), এবং RFC 2822 (ইমেইল হেডার ও HTTP-তে ব্যবহৃত তারিখ ফরম্যাট)। Cron expression টুলিং POSIX (IEEE Std 1003.1)-এ মূলত সংজ্ঞায়িত পাঁচ-ক্ষেত্রের শিডিউল সিনট্যাক্স পার্সিং, জেনারেটিং এবং ভ্যালিডেশন কভার করে। এই সিনট্যাক্স আজ crontab, systemd টাইমার, GitHub Actions, Kubernetes CronJobs এবং AWS EventBridge ও Google Cloud Scheduler-এর মতো ক্লাউড শিডিউলার ব্যবহার করে।

ডেভেলপাররা ডিবাগিংয়ের সময় (লগ বা ডেটাবেস রো থেকে টাইমস্ট্যাম্প রূপান্তর করতে), ডিপ্লয়মেন্টের সময় (cron শিডিউল লাইভ হওয়ার আগে লেখা ও যাচাই করতে) এবং কোড পর্যালোচনার সময় (কোনো সহকর্মীর cron expression কাঙ্ক্ষিত শিডিউলের সাথে মিলছে কিনা নিশ্চিত করতে) এই টুলগুলোর দিকে ঝোঁকেন। QA ইঞ্জিনিয়াররা API প্রতিক্রিয়ায় সঠিক তারিখ মান আছে কিনা যাচাই করতে টাইমস্ট্যাম্প রূপান্তর ব্যবহার করেন। DevOps ইঞ্জিনিয়াররা ব্যাকআপ শিডিউল, লগ রোটেশন এবং সার্টিফিকেট নবায়ন জব সেট আপ করতে cron টুল ব্যবহার করেন।

ToolDeck-এ টাইম টুলস কেন ব্যবহার করবেন?

ToolDeck-এর টাইম টুলস সম্পূর্ণরূপে আপনার ব্রাউজারে চলে। টাইমস্ট্যাম্প এবং cron expression JavaScript-এর মাধ্যমে স্থানীয়ভাবে প্রসেস হয়, তাই কিছুই আপনার মেশিন থেকে বের হয় না। প্রতিটি টুল একটি একক কাজকে লক্ষ্য করে এবং সাইন-আপ ফ্লো বা রেট সীমা ছাড়াই তাৎক্ষণিকভাবে লোড হয়।

🔒
শুধুমাত্র ব্রাউজারে প্রসেসিং
সমস্ত রূপান্তর এবং যাচাইকরণ আপনার ডিভাইসে JavaScript-এ এক্সিকিউট হয়। কোনো API কল নেই, কোনো সার্ভার লগ নেই, কোনো ডেটা সংরক্ষণ নেই। প্রোডাকশন ডেটাবেসের টাইমস্ট্যাম্প এবং অভ্যন্তরীণ cron শিডিউল আপনার মেশিনেই থাকে।
তাৎক্ষণিক ফলাফল
একটি Unix টাইমস্ট্যাম্প বা cron expression পেস্ট করুন এবং সঙ্গে সঙ্গে ফলাফল দেখুন। কোনো রাউন্ড-ট্রিপ বিলম্ব নেই, কোনো কিউ নেই, কোনো লোডিং স্পিনার নেই।
📐
মানদণ্ড-সম্মত আউটপুট
টাইমস্ট্যাম্প রূপান্তর ISO 8601 (RFC 3339) এবং RFC 2822 আউটপুট তৈরি করে। Cron পার্সিং POSIX পাঁচ-ক্ষেত্রের ফরম্যাট এবং সাধারণ এক্সটেনশন যেমন সেকেন্ড ক্ষেত্র, L (শেষ), W (নিকটতম সপ্তাহের দিন) এবং # (n-তম সপ্তাহের দিন) অক্ষর সমর্থন করে।
🔓
অ্যাকাউন্টের প্রয়োজন নেই
পেজ খুলুন এবং কাজ শুরু করুন। কোনো সাইন-আপ নেই, কোনো API কী নেই, কোনো ব্যবহারের সীমা নেই। টুলটি বুকমার্ক করুন এবং যখনই প্রয়োজন হয় ব্যবহার করুন।

টাইম টুলসের ব্যবহারের ক্ষেত্র

টাইমস্ট্যাম্প এবং cron উভয় সমস্যাই ব্যাকএন্ড, DevOps এবং QA কাজে ক্রমাগত দেখা যায়।

লগ বিশ্লেষণ
ইনসিডেন্ট তদন্তের সময় ইভেন্ট পারস্পরিক সম্পর্কিত করতে অ্যাপ্লিকেশন লগের epoch টাইমস্ট্যাম্প পাঠযোগ্য তারিখে রূপান্তর করুন। দ্রুত বুঝুন একটি ১০-অঙ্কের বা ১৩-অঙ্কের মান সেকেন্ড নাকি মিলিসেকেন্ড।
CI/CD শিডিউলিং
কমিট করার আগে GitHub Actions ওয়ার্কফ্লো, Jenkins পাইপলাইন বা GitLab CI শিডিউলের জন্য cron expression তৈরি ও যাচাই করুন। শিডিউল নিশ্চিত করতে পরবর্তী পাঁচটি এক্সিকিউশন সময়ের প্রিভিউ দেখুন।
Kubernetes CronJob সেটআপ
পরবর্তী রান সময়ের প্রিভিউ দেখতে এবং এটি কাঙ্ক্ষিত Kubernetes CronJob শিডিউলের সাথে মিলছে কিনা নিশ্চিত করতে একটি cron expression পার্স করুন।
ডেটাবেস ডিবাগিং
ডেটা সমস্যা তদন্ত করার সময় ডেটাবেস কলামে সংরক্ষিত Unix টাইমস্ট্যাম্প মানব-পাঠযোগ্য তারিখে অনুবাদ করুন।
মনিটরিং এবং অ্যালার্টিং
Prometheus অ্যালার্টিং রুল, Grafana রিপোর্ট শিডিউল বা PagerDuty রক্ষণাবেক্ষণ উইন্ডোর জন্য cron expression লিখুন। Terraform বা Helm কনফিগে যোগ করার আগে সিনট্যাক্স যাচাই করুন।
API প্রতিক্রিয়া পরীক্ষা
REST API থেকে প্রত্যাবর্তিত epoch টাইমস্ট্যাম্প ডিকোড করুন যাতে created_at, updated_at এবং expires_at ক্ষেত্রে প্রত্যাশিত মান আছে কিনা যাচাই করা যায়।

টাইম ফরম্যাট এবং Cron সিনট্যাক্স রেফারেন্স

দুটি ক্ষেত্র জানা দরকার: API, ডেটাবেস এবং লগে ব্যবহৃত টাইমস্ট্যাম্প ফরম্যাট; এবং Unix cron, Kubernetes, GitHub Actions এবং ক্লাউড শিডিউলার ব্যবহৃত cron expression সিনট্যাক্স।

সাধারণ টাইমস্ট্যাম্প ফরম্যাট

ফরম্যাটউদাহরণমানদণ্ড / নোট
1717200000Unix সেকেন্ডPOSIX / IEEE Std 1003.1
1717200000000Unix মিলিসেকেন্ডJavaScript Date.now(), Java
2024-06-01T00:00:00.000Zমিলিসেকেন্ডসহ UTCISO 8601 / RFC 3339
2024-06-01T00:00:00+02:00UTC অফসেটসহISO 8601 / RFC 3339
Sat, 01 Jun 2024 00:00:00 +0000ইমেইল / HTTP হেডারRFC 2822
2024-06-01শুধু তারিখISO 8601 (calendar date)

Cron এক্সপ্রেশনের ক্ষেত্র

ক্ষেত্রঅনুমোদিত মানবিশেষ অক্ষর
মিনিট0–59* , - /
ঘণ্টা0–23* , - /
মাসের দিন1–31* , - / ? L W
মাস1–12 or JAN–DEC* , - /
সপ্তাহের দিন0–6 or SUN–SAT* , - / ? L #

মানক পাঁচ-ক্ষেত্রের cron (মিনিট থেকে day-of-week পর্যন্ত) POSIX (IEEE Std 1003.1) দ্বারা সংজ্ঞায়িত এবং crontab, systemd, Kubernetes CronJobs, GitHub Actions এবং অধিকাংশ CI/CD প্ল্যাটফর্ম ব্যবহার করে। Quartz এবং Spring-এর মতো কিছু সিস্টেম সেকেন্ডের জন্য একটি ষষ্ঠ ক্ষেত্র যোগ করে। AWS EventBridge একটি বছরের ক্ষেত্রসহ ছয়-ক্ষেত্রের ভেরিয়েন্ট ব্যবহার করে। L (শেষ), W (নিকটতম সপ্তাহের দিন) এবং # (n-তম ঘটনা) অক্ষর Quartz-সামঞ্জস্যপূর্ণ সিস্টেম সমর্থিত এক্সটেনশন, তবে POSIX cron সমর্থিত নয়।

সঠিক টাইম টুল কীভাবে বেছে নেবেন

প্রতিটি টাইম টুল আলাদা কাজ করে; চারটি টুল একটি ওয়ার্কফ্লোতেও একসাথে ব্যবহার করা যায়। যখনই লগ, API প্রতিক্রিয়া বা ডেটাবেস কলামে একটি কাঁচা epoch মান দেখেন তখন টাইমস্ট্যাম্প রূপান্তরকারী ব্যবহার করুন। cron টুলগুলো একসাথে ব্যবহার করুন — expression তৈরি করতে জেনারেটর, আসন্ন রান সময়ের প্রিভিউ দেখতে পার্সার এবং সিনট্যাক্স নিশ্চিত করতে ভ্যালিডেটর — কোনো ম্যানিফেস্ট বা কনফিগ ফাইলে শিডিউল কমিট করার আগে।

  1. 1
    যদি আপনার প্রয়োজন হয় Unix টাইমস্ট্যাম্পকে পাঠযোগ্য তারিখে বা বিপরীতে রূপান্তর করাটাইমস্ট্যাম্প রূপান্তরকারী
  2. 2
    যদি আপনার প্রয়োজন হয় একটি বিদ্যমান cron expression কী করে এবং পরবর্তীতে কখন চলবে তা বোঝাCron এক্সপ্রেশন পার্সার
  3. 3
    যদি আপনার প্রয়োজন হয় ভিজ্যুয়াল ইন্টারফেস ব্যবহার করে শূন্য থেকে নতুন cron expression তৈরি করাCron এক্সপ্রেশন জেনারেটর
  4. 4
    যদি আপনার প্রয়োজন হয় একটি cron expression সিনট্যাক্টিক্যালি বৈধ কিনা পরীক্ষা করা এবং প্রতিটি ক্ষেত্র পরীক্ষা করাCron এক্সপ্রেশন ভ্যালিডেটর

সম্পূর্ণ cron ওয়ার্কফ্লোের জন্য: জেনারেটরে expression তৈরি করুন, পার্সারে পরবর্তী রান সময়ের প্রিভিউ দেখুন এবং কোনো ম্যানিফেস্ট বা crontab-এ কমিট করার আগে ভ্যালিডেটরে সিনট্যাক্স যাচাই করুন। আপনি যদি কোনো API বা ডেটাবেস থেকে টাইমস্ট্যাম্প ডিবাগ করছেন, টাইমস্ট্যাম্প রূপান্তরকারী সেকেন্ড এবং মিলিসেকেন্ড উভয় Unix টাইমস্ট্যাম্প পরিচালনা করে এবং ISO 8601, RFC 2822 এবং লোকেল-ফরম্যাটেড তারিখ আউটপুট করে। JWT পরীক্ষার জন্যও টাইমস্ট্যাম্প রূপান্তরকারী কার্যকর: একটি JSON Web Token-এর exp (মেয়াদোত্তীর্ণ) এবং iat (ইস্যুড-অ্যাট) দাবিগুলো Unix সেকেন্ড টাইমস্ট্যাম্প, এবং যেকোনো মান রূপান্তরকারীতে পেস্ট করলে কোনো কোড না লিখেই সঠিক ইস্যু সময় বা মেয়াদ উইন্ডো জানা যায়।

সচরাচর জিজ্ঞাসা

Unix টাইমস্ট্যাম্প কী?
Unix টাইমস্ট্যাম্প হল Unix epoch নামে পরিচিত 1970-01-01 00:00:00 UTC থেকে অতিবাহিত সেকেন্ড (বা মিলিসেকেন্ড, সিস্টেমের উপর নির্ভরশীল) সংখ্যা। এটি টাইমজোন-নিরপেক্ষ: একই টাইমস্ট্যাম্প বিশ্বের সর্বত্র একই পরম মুহূর্ত নির্দেশ করে। JavaScript মিলিসেকেন্ড টাইমস্ট্যাম্প ব্যবহার করে (Date.now()), আর বেশিরভাগ Unix ইউটিলিটি এবং ডেটাবেস সেকেন্ড ব্যবহার করে।
Cron expression কী?
Cron expression হল পাঁচটি স্পেস-বিভক্ত ক্ষেত্রের একটি স্ট্রিং যা একটি পুনরাবৃত্ত শিডিউল নির্ধারণ করে: মিনিট, ঘন্টা, মাসের দিন, মাস এবং সপ্তাহের দিন। ফরম্যাটটি Unix Version 7 (1979)-এ চালু হয়েছিল এবং এখন crontab, systemd টাইমার, Kubernetes CronJobs, GitHub Actions, AWS EventBridge এবং আরও অনেক শিডিউলার ব্যবহার করে। প্রতিটি ক্ষেত্র এককমান (5), পরিসর (1-5), তালিকা (1,3,5), স্টেপ মান (*/15) এবং ওয়াইল্ডকার্ড (*) গ্রহণ করে। উদাহরণস্বরূপ, 30 9 * * 1-5 মানে সপ্তাহের দিনগুলোতে UTC সকাল ৯:৩০।
সেকেন্ড এবং মিলিসেকেন্ড টাইমস্ট্যাম্পের মধ্যে কীভাবে রূপান্তর করব?
মিলিসেকেন্ড পেতে সেকেন্ড টাইমস্ট্যাম্পকে 1000 দিয়ে গুণ করুন। সেকেন্ড পেতে মিলিসেকেন্ড টাইমস্ট্যাম্পকে 1000 দিয়ে ভাগ করুন (এবং পূর্ণসংখ্যা অংশ নিন)। সেকেন্ড টাইমস্ট্যাম্প সাধারণত ১০ অঙ্কের — উদাহরণস্বরূপ, 1717200000 — আর মিলিসেকেন্ড টাইমস্ট্যাম্প ১৩ অঙ্কের, যেমন 1717200000000। এই দুটি গুলিয়ে ফেলা সবচেয়ে সাধারণ টাইমস্ট্যাম্প বাগের একটি।
Cron expression-এ */5 মানে কী?
*/5 সিনট্যাক্স মানে সেই ক্ষেত্রে 'প্রতি ৫ম মান'। মিনিট ক্ষেত্রে, */5 কাজটি মিনিট 0, 5, 10, 15, 20, 25, 30, 35, 40, 45, 50 এবং 55-এ চালু করে। স্টেপ অপারেটর (/) পরিসরের সাথেও কাজ করে: 1-30/5 মানে 1 থেকে 30 পর্যন্ত প্রতি ৫ম মিনিট।
কেন UTC-তে টাইমস্ট্যাম্প সংরক্ষণ করব?
UTC-তে সংরক্ষণ করা ডেলাইট সেভিং সময় পরিবর্তন, সার্ভার টাইমজোন অমিল এবং ক্রস-রিজিয়ন ডেটা একত্রীকরণ থেকে অস্পষ্টতা দূর করে। শুধুমাত্র ডিসপ্লে স্তরে (UI বা রিপোর্ট রেন্ডারিং ধাপে) স্থানীয় সময়ে রূপান্তর করুন। যখন টাইমস্ট্যাম্প স্থানীয় সময়ে সংরক্ষিত হয়, DST পরিবর্তন ফাঁক এবং ওভারল্যাপ তৈরি করে: রাত ২:৩০ নাও থাকতে পারে (স্প্রিং ফরওয়ার্ড) বা দুবার ঘটতে পারে (ফল ব্যাক)। UTC-তে এমন কোনো পরিবর্তন নেই। এই পদ্ধতি ডিস্ট্রিবিউটেড সিস্টেমে মানক অনুশীলন এবং W3C Date and Time Formats নোট দ্বারা প্রস্তাবিত।
ISO 8601 কী?
ISO 8601 হল তারিখ ও সময় স্ট্রিং ফরম্যাটের জন্য আন্তর্জাতিক মানদণ্ড। সবচেয়ে সাধারণ রূপ হল YYYY-MM-DDTHH:MM:SS.sssZ, যেখানে Z সাফিক্স মানে UTC। ISO 8601 স্ট্রিং কালানুক্রমিক ক্রমে অভিধানগতভাবে সাজানো যায়, যা লগ ফাইল, ডেটাবেস ইনডেক্স এবং API প্রতিক্রিয়ার জন্য ব্যবহারিক।
Cron expression কি প্রতি সেকেন্ডে চলতে পারে?
মানক পাঁচ-ক্ষেত্রের cron সাব-মিনিট শিডিউলিং সমর্থন করে না। সবচেয়ে ছোট ব্যবধান হল প্রতি মিনিটে একবার (মিনিট ক্ষেত্রে * ব্যবহার করে)। Spring-এর @Scheduled এবং Quartz-এর মতো কিছু সিস্টেম সেকেন্ড-পার-সেকেন্ড এক্সিকিউশনের অনুমতি দেওয়ার জন্য একটি ষষ্ঠ সেকেন্ড ক্ষেত্র যোগ করে। Kubernetes CronJobs এবং crontab সেকেন্ড সমর্থন করে না।
2038 সালের সমস্যা কী?
যেসব সিস্টেম Unix টাইমস্ট্যাম্প ৩২-বিট সাইন করা পূর্ণসংখ্যা হিসেবে সংরক্ষণ করে সেগুলো 2038-01-19 তারিখ 03:14:07 UTC-তে ওভারফ্লো হবে। একটি সাইন করা ৩২-বিট পূর্ণসংখ্যার সর্বোচ্চ মান হল 2,147,483,647, যা ঠিক সেই মুহূর্তের সাথে মিলে। ওভারফ্লোর পরে কাউন্টার ডিসেম্বর 1901-এর তারিখ উপস্থাপন করে একটি বড় ঋণাত্মক সংখ্যায় মোড়ানো হয়। আধুনিক ৬৪-বিট সিস্টেম এবং ভাষা — JavaScript, Python 3, Go, Rust — প্রভাবিত নয়। পুরানো এমবেডেড ডিভাইস, ext3 ফাইলসিস্টেম টাইমস্ট্যাম্প, পুরানো MySQL TIMESTAMP কলাম এবং কিছু বাইনারি প্রোটোকল ঝুঁকিতে রয়ে যায়।