Jenkins Health Advisor by CloudBees
Jenkins Health Advisor by CloudBees (formerly known as "CloudBees Jenkins Advisor") proactively notifies you of problems with your Jenkins-based environment. Jenkins Health Advisor by CloudBees identifies numerous issues before they affect your users, including security vulnerabilities, performance problems, and plugin version issues. Best of all, Jenkins Health Advisor by CloudBees is constantly being improved by the CloudBees Support and Engineering teams to cover the most recent identified issues.
By default, you’ll receive a summary email whenever a new problem is identified in your Jenkins instance. You can configure the email address Jenkins Health Advisor by CloudBees uses in the Configuration section.
Initially, Jenkins Health Advisor by CloudBees sends an initial report that lists everything it detects in your system. Subsequent reports will only report changes from the initial report. It’s important to note that Jenkins Health Advisor by CloudBees only emails you if it finds something wrong: if it doesn’t find any problem in your system, it won’t send you email.
Jenkins Health Advisor by CloudBees identifies problems by scanning a Support Bundle from your Jenkins master. The Support Bundle is generated on a daily basis and submitted to servers hosted by CloudBees by the Jenkins Health Advisor plugin. For instructions on defining the types and kinds of data to include in the Support Bundle, see the Optional Configuration section.
The requirements for installing and using Jenkins Health Advisor by CloudBees are:
A Jenkins LTS instance of version
CloudBees Jenkins Instances must be on version
184.108.40.206or newer to install the Jenkins Health Advisor by CloudBees.
If you are using an older version than those listed and you are a CloudBees Subscriber, you can use the Assisted Update process by submitting a ticket to CloudBees Support. For more information, see the Required Data: Assisted Update article.
A Support Bundles generated from your Master must be less than 500MB to successfully send the report.
An Internet connection is required for the Advisor plugin to send Support Bundles from your Master. For more information, see the Network Configuration section.
Jenkins Health Advisor by CloudBees should be installed on all Masters in your instance.
|To install Jenkins Health Advisor by CloudBees on many masters in a CloudBees Core or Operations Center environment, see Installing on Masters in an Operations Center cluster for instructions.|
|Jenkins Health Advisor by CloudBees is installed by default in CloudBees Jenkins Distribution instances. If you are using a CloudBees Jenkins Distribution instance you can directly configure the plugin.|
Access the plugin manager for your Masters,
Manage pluginsand select the
Search for the plugin named
Health Advisor by CloudBees.
Select the checkbox to the left under the
Installcolumn and click on the button Install without restart.
To configure your system to use Jenkins Health Advisor by CloudBees:
Manage Jenkins Health Advisor by CloudBeesfrom the
Accept the Terms and Conditions.
Add a valid email to the email field.
You may optionally click on send a test email to verify that your Jenkins instance can reach the server and send you back an email.
Save your configuration.
After the plugin is properly configured, your Jenkins instance will be connected to the Advisor service.
You will begin receiving reports to your defined email.
|You should receive your first report within the next 24 hours when using defaults.|
You will have to designate at least one email address to receive emails from the Advisor service.
This email service will need to accept email coming from
You can configure what information is sent to the server from the
Analyzed Data section of the configuration page.
Click on the button Configure Data and select the data you want to be sent and analyzed.
The options are the same as the Support Core plugin.
If your system is configured so that you cannot access the server from your instance, you can disable the message from the Reminder section.
Select the box to
Suppress the reminder to configure Jenkins Health Advisor by CloudBees.
Version 3.0 of Jenkins Health Advisor by CloudBees includes support for Jenkins Configuration as Code. Here is a configuration sample:
advisor: acceptToS: true email: "email@example.com" ccs: - "firstname.lastname@example.org" - "email@example.com" excludedComponents: - "ItemsContent" - "GCLogs" - "Agents" - "AgentsConfigFile" - "ConfigFileComponent" - "RootCAs" - "SlaveLogs" - "OtherConfigFilesComponent" - "HeapUsageHistogram" nagDisabled: false
The servers infrastructure used for Jenkins Health Advisor by CloudBees is hosted on Amazon Web Services (
The Jenkins instance must be able to connect to the server at
insights.cloudbees.com on port
Refer to AWS IP address ranges if a more specific IP address range definition is required.
To install, configure and update Jenkins Health Advisor by CloudBees on multiple CloudBees Jenkins Masters managed by a CloudBees Operations Center, you can use a Cluster Operation.
To create and configure a cluster operation:
In Target managed masters, add the masters upon which you want to install or configure Jenkins Health Advisor by CloudBees. Make sure you’ve taken care of the prerequisites!
Add the following steps:
Install pluginstep with the
plugin IDset to
cloudbees-jenkins-advisorand no version: using no version instructs the system to use the most recent plugin available for the given master.
Execute Groovy Script on Masterstep using the following script (replacing the
firstname.lastname@example.org with your preferred email address):
If you deploy a version of the plugin >= 3.0:
import com.cloudbees.jenkins.plugins.advisor.* import com.cloudbees.jenkins.plugins.advisor.client.model.* println "Configuration of Advisor ..." def config = AdvisorGlobalConfiguration.instance config.acceptToS = true config.email = "email@example.com" config.ccs = [new Recipient("firstname.lastname@example.org"),new Recipient("email@example.com")] // optional config.nagDisabled = true // optional config.save() println "Configuration of Advisor done."
If you deploy a version of the plugin < 3.0:
import com.cloudbees.jenkins.plugins.advisor.* println "Configuration of Advisor ..." def config = AdvisorGlobalConfiguration.instance config.acceptToS = true config.isValid = true config.email = "firstname.lastname@example.org" config.cc = "email@example.com,firstname.lastname@example.org" // optional config.nagDisabled = true // optional config.save() println "Configuration of Advisor done."
Your masters are now configured to use Advisor. You will receive the first report within 24 hours.