<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title>Job engine on CloudBolt Documentation</title>
		<link>https://docs.cloudbolt.io/docs/cmp/configure/administration/system/job-engine/</link>
		<description>Recent content in Job engine on CloudBolt Documentation</description>
		<generator>Hugo</generator>
		<language>en-us</language>
		
		
		
		
			<atom:link href="https://docs.cloudbolt.io/docs/cmp/configure/administration/system/job-engine/index.xml" rel="self" type="application/rss+xml" />
			<item>
				<title>Job engine troubleshooting</title>
				<link>https://docs.cloudbolt.io/docs/cmp/configure/administration/system/job-engine/troubleshooting/</link>
				<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
				<guid>https://docs.cloudbolt.io/docs/cmp/configure/administration/system/job-engine/troubleshooting/</guid>
				<description>&lt;p&gt;Work from the status to the appliance, then to the logs. Most of what follows also produces the information a support engineer will ask for, so keep notes as you go.&lt;/p&gt;&#xA;&lt;h2 id=&#34;start-with-the-jobs-status&#34;&gt;Start with the job&amp;rsquo;s status&lt;/h2&gt;&#xA;&lt;p&gt;Note the job number, status, and URL of the job that made you notice the problem, then find its status below. For what each status means, see &lt;a href=&#34;https://docs.cloudbolt.io/docs/cmp/configure/administration/system/job-engine/&#34;&gt;Job engine&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;div class=&#34;table-scroll&#34;&gt;&#xA;&lt;div class=&#34;table-responsive&#34;&gt;&#xA;&lt;table&gt;&#xA;  &lt;thead&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;th&gt;Status&lt;/th&gt;&#xA;          &lt;th&gt;What to check&lt;/th&gt;&#xA;      &lt;/tr&gt;&#xA;  &lt;/thead&gt;&#xA;  &lt;tbody&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;&lt;code&gt;PENDING&lt;/code&gt;&lt;/td&gt;&#xA;          &lt;td&gt;Whether the job is scheduled for a future time, which is normal. Otherwise, confirm that a worker is running and check whether anything is preventing the job engine from starting.&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;&lt;code&gt;QUEUED&lt;/code&gt;&lt;/td&gt;&#xA;          &lt;td&gt;Whether the worker that claimed the job is still alive, and whether it is out of free threads. A worker with no free threads records that in its log. If the worker has died, the job stays QUEUED, because nothing reclaims it. Cancel it and order the work again.&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;&lt;code&gt;RUNNING&lt;/code&gt;&lt;/td&gt;&#xA;          &lt;td&gt;The job&amp;rsquo;s own log, for its last step and any error. The job may still be working normally. If its worker has died, the job engine cancels the job on its next start.&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;&lt;code&gt;PAUSED&lt;/code&gt;, &lt;code&gt;STEP&lt;/code&gt;, &lt;code&gt;NEXT&lt;/code&gt;, &lt;code&gt;RETURN&lt;/code&gt;&lt;/td&gt;&#xA;          &lt;td&gt;The job is in debug mode and waiting for someone to drive it, holding a thread until it ends. An administrator can resume or cancel it from the job&amp;rsquo;s detail page.&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;&lt;code&gt;CANCELED&lt;/code&gt;&lt;/td&gt;&#xA;          &lt;td&gt;The job&amp;rsquo;s log. If the worker died, it says the process running the job is no longer active. A user cancellation and a timeout both log &lt;code&gt;Canceling this job&lt;/code&gt;, so check the job engine log to tell those two apart. Then run a small job to check the health of the job engine.&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;&lt;code&gt;SUCCESS&lt;/code&gt;, &lt;code&gt;WARNING&lt;/code&gt;, &lt;code&gt;FAILURE&lt;/code&gt;&lt;/td&gt;&#xA;          &lt;td&gt;The job engine is working, so troubleshoot the job itself: its log, the action or plugin it ran, and the resource it was working on.&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;  &lt;/tbody&gt;&#xA;&lt;/table&gt;&#xA;&lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;After checking the status, consider the following: which other jobs are affected, and which job ran most recently? Has anything run since? If some jobs are progressing and others are not, compare their types and owners: a worker may be restricted to &lt;a href=&#34;https://docs.cloudbolt.io/docs/cmp/configure/administration/system/job-engine/job-types/&#34;&gt;specific job types&lt;/a&gt;, which can make the excluded types appear stuck while everything else runs.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Restart the job engine</title>
				<link>https://docs.cloudbolt.io/docs/cmp/configure/administration/system/job-engine/restart/</link>
				<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
				<guid>https://docs.cloudbolt.io/docs/cmp/configure/administration/system/job-engine/restart/</guid>
				<description>&lt;p&gt;Restart them manually when one is stuck, and enable the automatic restart for jobs that the timeout cannot cancel.&lt;/p&gt;&#xA;&lt;p&gt;A worker runs for at least a minute. Once it has finished the jobs it started and has nothing active, it exits, and Supervisor starts a new one. This keeps a long-running plugin from leaking memory into later jobs. A worker process ID that changes throughout the day is evidence of this cycle.&lt;/p&gt;</description>
			</item>
			<item>
				<title>Run or exclude specific job types</title>
				<link>https://docs.cloudbolt.io/docs/cmp/configure/administration/system/job-engine/job-types/</link>
				<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
				<guid>https://docs.cloudbolt.io/docs/cmp/configure/administration/system/job-engine/job-types/</guid>
				<description>&lt;p&gt;This is controlled by environment variables &lt;code&gt;CBJE_INCLUDE_JOB_TYPES&lt;/code&gt; and &lt;code&gt;CBJE_EXCLUDE_JOB_TYPES&lt;/code&gt;. Each accepts a comma-separated list of job types, using the type names in the table below.&lt;/p&gt;&#xA;&lt;h2 id=&#34;set-the-variables&#34;&gt;Set the variables&lt;/h2&gt;&#xA;&lt;div class=&#34;table-scroll&#34;&gt;&#xA;&lt;div class=&#34;table-responsive&#34;&gt;&#xA;&lt;table&gt;&#xA;  &lt;thead&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;th&gt;Variable&lt;/th&gt;&#xA;          &lt;th&gt;Effect&lt;/th&gt;&#xA;      &lt;/tr&gt;&#xA;  &lt;/thead&gt;&#xA;  &lt;tbody&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;&lt;code&gt;CBJE_INCLUDE_JOB_TYPES&lt;/code&gt;&lt;/td&gt;&#xA;          &lt;td&gt;The job engine runs only jobs of the listed types.&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;&lt;code&gt;CBJE_EXCLUDE_JOB_TYPES&lt;/code&gt;&lt;/td&gt;&#xA;          &lt;td&gt;The job engine runs everything except jobs of the listed types.&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;  &lt;/tbody&gt;&#xA;&lt;/table&gt;&#xA;&lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Jobs of an excluded type stay PENDING until another job engine claims them. If no other job engine runs them, they never run.&lt;/p&gt;</description>
			</item>
	</channel>
</rss>
