জিনকিনসে প্রতি ঘন্টা একটি কাজের সময় নির্ধারণ করা দরকার


16

আমি জেনকিন্সে নতুন। আমার একটি কাজ আছে যা আমার প্রতি 1 ঘন্টা সময়সূচী করা দরকার।

আমি ব্যাবহার করছি

* */1 * * * 

তবে এটি কার্যকরভাবে কাজ করছে না।

অন্য কোনও সমাধান সরবরাহ করুন।


3
আপনার "কী তবে এটি কার্যকরভাবে কাজ করছে না" তা ব্যাখ্যা করা উচিত। উপায়। আর তোমার ডিস্ট্রো & cronttab এন্ট্রি যোগ
Sathyajith ভাট

ব্যবহার @hourlyবা0 * * * *
রেনজু চন্দ্রন চিংথ

ধন্যবাদ। দয়া করে বাক্য গঠনটি উল্লেখ করুন, আমি যদি প্রতি 3 ঘন্টা অন্তর শিডিউল করতে চাই।
অজয়

ব্যবহার: এইচ / 60 * * * *
আইয়াল সুলিমান

উত্তর:


31

জেনকিন্স এখানে বর্ণিত হিসাবে ক্রোন এক্সপ্রেশন ব্যবহার করে

প্রতি ঘন্টা শিডিউল করতে, তারপরে আপনি লাগাতে পারেন

0 * * * *

তারপরে আপনার কাজটি প্রতি ঘণ্টায় কার্যকর করা হবে (07:00, 08:00, 09:00 ইত্যাদি)

হালনাগাদ

আপনার মূল কনফিগারেশন, বাক্য গঠন সম্পর্কে ব্যাখ্যা হিসাবে

* */1 * * *

প্রতি মিনিটে কাজ কার্যকর করা হবে।

আপডেট 2

মন্তব্যে অনুরোধ করা হয়েছে, এখানে প্রতি 3 ঘন্টা সময়সূচির জন্য সিনট্যাক্স

0 */3 * * *

সিনট্যাক্স */nমানে কর্ম প্রতি nঘন্টা নির্ধারিত হয়


উত্তরের জন্য ধন্যবাদ। এটি ভাল কাজ করছে। তবে আমার কাজটি কার্যকর করতে এক ঘন্টা বেশি সময় নিচ্ছে। উদাহরণস্বরূপ, যদি আমি প্রতি 3 ঘন্টা এই কাজের সময়সূচী করতে চাই তবে সিনট্যাক্সটি কী হবে lease দয়া করে ভাগ করুন।
অজয়

আমার আপডেট হওয়া উত্তরটি চেক করুন :)
ম্যাসেগোলেহ

@ অজয় ​​যদি এই উত্তরটি আপনার সমস্যার জন্য কাজ করে তবে দয়া করে এই উত্তরটি গ্রহণ করার জন্য দয়া করে বিবেচনা করুন :)
ম্যাসেগোলেহ

14

জেনকিন্স এইভাবে পরামর্শ দেয়:

H * * * *

2
1+ বছর পুরানো প্রশ্নের উত্তর হিসাবে একই উত্তর।
জেকগল্ড

এটি অন্য উত্তরটির সদৃশ এবং কোনও নতুন সামগ্রী যুক্ত করে না। অবদানের জন্য আপনার কাছে নতুন কিছু না থাকলে দয়া করে কোনও উত্তর পোস্ট করবেন না।
ডেভিডপস্টিল

4
এই পদ্ধতির সুবিধা হ'ল জেনকিনস একটি সারিতে কাজগুলি পরিচালনা করবে। হয়তো অন্য কারও কাছে ইতিমধ্যে উত্তর ছিল তবে এটি এখনও কার্যকর। এটি কঠোর হতে হবে যদি এটি দরকারী? 20 টি পছন্দ মতো উত্তর খুব ভাল নয় .... বাহ
জুয়ান ইসজা

আমাকে @ জুয়ানআইজাজার সাথে যেতে হবে। এটি কোনও সদৃশ নয় বরং আসলে আরও ভাল উত্তর। জেনকিনস স্পষ্টতই Hহার্ডকোডযুক্ত মানগুলির পরিবর্তে ব্যবহার পছন্দ করার পরামর্শ দিয়েছেন
derHugo

9

আমি জানি এটি একটি পুরানো থ্রেড তবে আমি উত্তর দিচ্ছি কারণ আপাতদৃষ্টিতে লোকেরা এখানে অবতরণ করে।

শীর্ষের উত্তরটি আর ব্যবহার করা উচিত নয়।

জেনকিন্স একটি মান প্রবর্তন H

এই ক্ষেত্রটি ক্রোনটির বাক্য গঠনটি (সামান্য পার্থক্য সহ) অনুসরণ করে। বিশেষত, প্রতিটি লাইনে 5 টি ক্ষেত্র থাকে যা ট্যাব বা হোয়াইটস্পেস দ্বারা পৃথক:

আপনার গম্বুজ মাসের ডাউন ডাউন করুন

  • ঘন্টার মধ্যে মিনিট মিনিট (0-59)
  • ঘন্টা সময় (0-23)
  • ডোম মাসের দিন (1–31)
  • মাস মাসে (1-12)
  • ডাউন সপ্তাহের দিন (0-7) যেখানে 0 এবং 7 রবিবার।

এক ক্ষেত্রের জন্য একাধিক মান নির্দিষ্ট করতে, নিম্নলিখিত অপারেটরগুলি উপলব্ধ। অগ্রাধিকার ক্রমে,

  • * সমস্ত বৈধ মান নির্দিষ্ট করে
  • M-N মানগুলির একটি ব্যাপ্তি নির্দিষ্ট করে
  • M-N/X অথবা */X নির্দিষ্ট ব্যাপ্তি বা পুরো বৈধ ব্যাপ্তির মধ্য দিয়ে এক্স এর বিরতি দিয়ে পদক্ষেপগুলি
  • A,B,...,Z একাধিক মান গণনা করে

পর্যায়ক্রমে নির্ধারিত কাজগুলিকে সিস্টেমে এমনকি লোড উত্পাদন করতে অনুমতি দেওয়ার জন্য, এইচ ("হ্যাশ" এর জন্য) প্রতীকটি যেখানেই সম্ভব ব্যবহার করা উচিত। উদাহরণস্বরূপ, এক ডজন দৈনিক কাজের জন্য 0 0 * * * ব্যবহারের ফলে মধ্যরাতে বড় স্পাইক হবে। বিপরীতে, এইচএইচ * * * ব্যবহার করেও প্রতিদিন একবারে প্রতিটি কাজ চালানো হবে তবে একইসাথে নয়, সীমিত সংস্থান ব্যবহার করে আরও ভাল।

এইচ চিহ্নটি একটি ব্যাপ্তির সাথে ব্যবহার করা যেতে পারে। উদাহরণস্বরূপ, এইচএইচ (0-7) * * * এর অর্থ সকাল 12:00 (মধ্যরাত) থেকে 7:59 এএমের মধ্যে কিছুটা সময়। আপনি এইচ এর সাথে ধাপের ব্যবধানগুলি, ব্যাপ্তি ছাড়াই বা ছাড়াই ব্যবহার করতে পারেন।

এইচ সিম্বলটিকে একটি পরিসরের তুলনায় এলোমেলো মান হিসাবে ভাবা যেতে পারে তবে এটি আসলে কাজের নামের একটি হ্যাশ, এলোমেলো ফাংশন নয়, যাতে কোনও প্রদত্ত প্রকল্পের জন্য মান স্থিতিশীল থাকে।

সাবধান হন যে মাসের ক্ষেত্রের দিনের জন্য, পরিবর্তনশীল মাসের দৈর্ঘ্যের কারণে, * / 3 বা এইচ / 3 এর মতো সংক্ষিপ্ত চক্র বেশিরভাগ মাসের শেষের দিকে অবিচ্ছিন্নভাবে কাজ করবে না। উদাহরণস্বরূপ, * / 3 দীর্ঘ মাসের 1 লা, 4 র্থ, ... 31 তম দিন চলবে, তারপরে পরের মাসের পরের দিন আবার চলবে। হ্যাশগুলি সর্বদা 1-28 ব্যাপ্তিতে চয়ন করা হয়, সুতরাং এইচ / 3 মাসের শেষে 3 থেকে 6 দিনের মধ্যে রানের ব্যবধান তৈরি করে। (দীর্ঘ চক্রগুলিরও বেমানান দৈর্ঘ্য থাকবে তবে এর প্রভাব তুলনামূলকভাবে কম লক্ষণীয় হতে পারে))

সুতরাং এক ঘন্টা একবার বিল্ডিং জন্য সঠিক উত্তর

H * * * *

প্রতি 3 ঘন্টা জন্য

H H/3 * * *

মধ্যে পার্থক্য *এবং Hহিসাবে ব্যাখ্যা করা যেতে পারে

  • *প্রত্যেকটিতে অনুবাদ করে
  • Hযে কোনও অনুবাদ

সুতরাং যেমন

* * * * *

অনুবাদ করে: প্রতি মিনিটে, প্রতি ঘন্টা, প্রতিমাসে, প্রতি মাসে, প্রতি সপ্তাহে, তা সপ্তাহের কোন দিন তা বিবেচনা করে না।

H * * * *

এতে অনুবাদ করে: প্রতি ঘন্টা (x) একবারে তৈরি করুন , এটি সঠিক মুহুর্তের কোনও ব্যাপার নয় (x: 00 এবং x: 59 এর মধ্যে কোনও মিনিট হতে পারে)

H H * * *

এতে অনুবাদ করে: প্রতিদিন একবার তৈরি করুন , সময়টি কী তা বিবেচনা করে না (যে কোনও মিনিট এবং কোনও ঘন্টা 00:00 থেকে 23:59 এর মধ্যে হতে পারে)


Hহার্ডকডযুক্ত সময় মানগুলির পরিবর্তে আপনার কেন ব্যবহার পছন্দ করা উচিত তার কারণটিও পূর্ববর্তী হিসাবে ব্যাখ্যা করা হয়েছে

আপনার যদি 100 টি কাজ কনফিগার করা থাকে

0 0 * * *

তারা সকলেই একই সাথে শুরু করার চেষ্টা করবে উদাহরণস্বরূপ প্রচুর পোল এবং মধ্যরাতে ট্রাফিক টানতে।

আপনার যদি সেগুলির পরিবর্তে সমস্ত কনফিগার করা থাকে

H H * * *

সেগুলি সমস্ত একবারে নির্মিত হবে তবে সমস্ত একই সময়ে নয় তবে সারা দিনে বিতরণ করা হবে।


সময়সীমা নির্ধারণ করুন

উদাহরণস্বরূপ, সময় রেঞ্জগুলি ব্যবহার করে আপনি স্কেডুলেলের আরও ভাল পরিকল্পনা করতে পারেন

H H(18-23) * * *

সমস্ত কাজ প্রতিদিন 18:00 থেকে 23:59 এর মধ্যে যে কোনও সময় নির্মিত হবে।


মধ্যরাত পার হওয়ার সময়সীমা নির্ধারণ করুন

এমনকি মধ্যরাত পেরোতে যেমন কর্মসূচি নির্ধারণ করা সম্ভব যেমন উদাহরণস্বরূপ সন্ধ্যা 19:00 থেকে 5:00 এর মধ্যে তৈরি করা।

কিন্তু ক্রন যেহেতু সাধারণত এই আপনি একটি shiftet সময় অঞ্চল ব্যবহার করে একটি কৌতুক ব্যবহার করতে পারেন অনুমতি দেয় না।

উদাহরণস্বরূপ, আমি টাইমজোন মেইজেডে থাকি যা জিএমটি +১ এবং আমি সমস্ত কাজ সন্ধ্যা 19:00 থেকে 5:00 এর মধ্যে তৈরি করতে চাই। এটি করার জন্য আমি আমার সম্পূর্ণ টাইমজোনটি ব্যবহার করে 5 ঘন্টা ব্যবহার করে শিফট করি

TZ=Etc/GMT+6

আমি 14:00 (-> +5 = 19:00 pm) থেকে শুরু হয়ে 23:59 (-> +5 = 4:59 সকাল) এ শেষ হওয়া ঘন্টার জন্য শিফট পরিসর ব্যবহার করি না

H H(14-23) * * *

-1
* */1 * * *

এটা ঠিক যে এটি প্রতি ঘন্টা চালায়

এইচ ফাংশনটি ব্যবহার করার চেষ্টা করুন যাতে সমস্ত কাজ একই সাথে এসএনএন-তে পোল না করে

H H/1 * * *

এটা যাদু করা উচিত। যদি কাজটি শেষ করতে আরও বেশি সময় লাগে বা আপনি ট্রিগার কার্যকারিতা তৈরি করে চলেছেন। হয় সময় বাড়িয়ে দিন বা পূর্বের বিল্ডটি শেষ না হওয়া পর্যন্ত বিল্ড বন্ধ করতে জেনকিন্স প্লাগইন ব্যবহার করুন।

https://wiki.jenkins-ci.org/display/JENKINS/Build+Blocker+Plugin


প্রথমটি প্রতি মিনিটে সকাল 1:00 থেকে 2:00 টার মধ্যে চলে, তাই না?
এরিক ওয়াং

@ এরিক ওয়াং: না It এটি * * * * *প্রতি মিনিটে => চলমান। নির্দিষ্ট ব্যাপ্তির মধ্যে দৌড়ানোর জন্য আপনি এটিকে ব্যবহার করেন * 1-2 * * *<- এটি প্রতি মিনিটে সকাল 1:00 থেকে 1:59 এর মধ্যে চলে
derHugo

আপনি কি বোঝাতে চান * * 1-2 * *?
এরিক ওয়াং

1
@EricWang না আমি গড় * 1-2 * * *। প্রথম অবস্থানটি Minute of our, দ্বিতীয়টির জন্য hour of day, তৃতীয়টি day of month, চতুর্থ month of yearএবং পঞ্চম day of week(বিশেষ ক্ষেত্রে এটি একটি ষষ্ঠ ব্যক্তিরও অনুমতি দেয় year)। সুতরাং আপনার লাইনটি * * 1-2 * *"প্রতি মিনিট, প্রতি ঘন্টা, প্রতি মাসের প্রথম এবং দ্বিতীয় দিন এবং সপ্তাহের যে কোনও দিন অনুবাদ করে
derHugo

1
এই উত্তরের লেখক যে পার্থক্যটি মিস করেছেন তা হ'ল *অনুবাদ করার everyসময় Hঅনুবাদ করে any। সুতরাং * * * * *প্রতি মিনিটের H * * * *মানে , প্রতি ঘন্টায় একবার গড়তে হবে তবে আমি সঠিক মিনিটের যত্ন নিচ্ছি না (কোনও পরিসীমা দ্বারা সংজ্ঞায়িত না হলে 0-59 এর মধ্যে যে কোনও জায়গায় থাকতে পারে) এবং এর H H * * *অর্থ প্রতিদিন একবার বানাতে হবে তবে আমি কী সময় যত্ন করি না।
derHugo

-5

বাক্য গঠনটি হ'ল:


MINUTE  Minutes within the hour (0-59)
HOUR    The hour of the day (0-23)
DOM     The day of the month (1-31)
MONTH   The month (1-12)
DOW     The day of the week (0-7) where 0 and 7 are Sunday.

আপনি যদি প্রতি 3 ঘন্টা সময় নির্ধারণ করতে চান তবে সিনট্যাক্সটি দেখতে হবে:

* 3 * * * *

4
এটি প্রতিদিন 3 টা থেকে 6
মিনিটের
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.