Manual SDO Configuration
These instructions help you prepare and set up the Software Development Optimization (SDO) Solution manually, without using Terraform. You will manually configure collection and install apps for tool integration, create field extraction rules (FERs) for each supported tool, and install the SDO app.
Prerequisites
Before setting up the SDO solution, you need to complete the following tasks:
-
Ensure that you have permissions to configure software and platforms used in your DevOps toolchain that will emit data to Sumo using webhooks (for example, Jira, GitHub, GitLab, Bitbucket, CircleCI, PagerDuty, Opsgenie, and so on).
-
If you use Jenkins, ensure that you have access to Jenkins with Manage Plugins permissions.
-
Make sure you have access to the Sumo logic web app. The user account associated with a Sumo Logic role needs the following permissions:
- Manage field extraction rules
- View Fields
- View field extraction rules
- Manage Collectors
- View Collectors
- Manage Fields
- Manage connections
- Manage Content
-
Create a Sumo Logic API key and ID for the above user.
Configure Collection and Install Apps
To set up the SDO solution manually, configure collection and install apps for each tool that you want to integrate with this solution. Complete the following instructions for each app integration:
Create New FERs
You will need to manually create new field extraction rules (FERs) that map events from tools of your choice to the SDO event schema by using the scope and parse expression from this JSON file of field extraction rules for each tool.
When you copy the scope, replace the $$<toolname>
variable with the source category you configured for the tool you configured when installing apps for tool integration.
Install the SDO App
Install the Sumo Logic App for Software Development Optimization to use the pre-configured searches and dashboards that provide you insights and visibility into your DevOps phases and pipelines.
To install the app:
- Select App Catalog.
- In the 🔎 Search Apps field, run a search for your desired app, then select it.
- Click Install App.
note
Sometimes this button says Add Integration.
- On the next configuration page, under Select Data Source for your App, complete the following fields:
- Data Source. Select one of the following options:
- Choose Source Category and select a source category from the list; or
- Choose Enter a Custom Data Filter, and enter a custom source category beginning with an underscore. For example,
_sourceCategory=MyCategory
.
- Folder Name. You can retain the existing name or enter a custom name of your choice for the app.
- All Folders (optional). The default location is the Personal folder in your Library. If desired, you can choose a different location and/or click New Folder to add it to a new folder.
- Data Source. Select one of the following options:
- Click Next.
- Look for the dialog confirming that your app was installed successfully.
Post-installation
Once your app is installed, it will appear in your Personal folder or the folder that you specified. From here, you can share it with other users in your organization. Dashboard panels will automatically start to fill with data matching the time range query received since you created the panel. Results won't be available immediately, but within about 20 minutes, you'll see completed graphs and maps.
Complete Post-Setup Configurations
After setting up the SDO solution, you can complete post-setup configuration.
Post Setup Configuration
After completing configuration, instrument your DevOps pipeline to specially identify and send build and deploy events in your pipeline to Sumo Logic. These events are correlated with other events in the DevOps lifecycle.
Complete the configuration for the build and deploy tool you use.
Bitbucket for build and deploy
- Classic UI. In the main Sumo Logic menu, select Manage Data > Collection > Collection.
New UI. In the top menu select Configuration, and then under Data Collection select Collection. You can also click the Go To... menu at the top of the screen and select Collection. - Search for Software Development Optimization Collector.
- Under this Collector, click on Show URL for the source Bitbucket Cloud. Make a note of this URL and use this URL to configure the Bitbucket CI/CD Pipeline to collect deploy events:
- Deploy: Follow the steps outlined in this document to configure the Bitbucket CI/CD Pipeline to collect deploy events.
Jenkins for build and deploy
- Install the latest Jenkins Plugin as described here.
- Classic UI. In the main Sumo Logic menu, select Manage Data > Collection > Collection.
New UI. In the top menu select Configuration, and then under Data Collection select Collection. You can also click the Go To... menu at the top of the screen and select Collection. - Search for Software Development Optimization Collector.
- Under this Collector, click on Show URL for the source Jenkins. Make a note of this URL and Source Category, you will use these to configure the Jenkins Plugin :
- Build Pipeline Stages: Follow Configure Jenkins Plugin, and optionally Optional - Advance Configuration to configure the Jenkins Sumo Logic plugin.
- Build: Follow this doc to modify your Jenkins plugin to explicitly identify, enrich, and send Build Events to Sumo Logic.
- Deploy: Follow this doc to modify your Jenkins plugin to explicitly identify, enrich, and send Deploy Events to Sumo Logic.
CircleCI for build and deploy
If you're using CircleCI for Build and Deploy, do the following:
- Classic UI. In the main Sumo Logic menu, select Manage Data > Collection > Collection.
New UI. In the top menu select Configuration, and then under Data Collection select Collection. You can also click the Go To... menu at the top of the screen and select Collection. - Configure a hosted collector to ingest CircleCI data into Sumo Logic and call it
Software Development Optimization
. - Under this collector, create the following two HTTP sources:
_sourceCategory=circleci/job-collector
_sourceCategory="circleci/workflow-collector"
Sumo Logic sources, by default, have multiline processing enabled. You'll need to disable it here in order to collect structured logs for CircleCI.
- Copy and save the displayed URLs associated with the sources. You will use this information to upload data.
- Create Field Extraction Rules:
- Classic UI. In the main Sumo Logic menu, select Manage Data > Logs > Field Extraction Rules.
New UI. In the top menu select Configuration, and then under Logs select Field Extraction Rules. You can also click the Go To... menu at the top of the screen and select Field Extraction Rules. - Create two FERs for CircleCI build and deploy events. The parse expression and the scope of the are available here.
- Classic UI. In the main Sumo Logic menu, select Manage Data > Logs > Field Extraction Rules.
- (Optional) In order to use uncertified orbs (partner or community), navigate to your CircleCI platform and perform the below steps:
- Go to Organization Settings > Security page.
- On the Orb Security Settings click Yes to enable the use of uncertified orbs.
- Navigate to the CircleCI project environment and create three environment variables in the project settings of the environment:
CIRCLE_TOKEN = <API personal token created in CircleCi>
JOB_HTTP_SOURCE = <url of job-collector source created above in step 3>
WORKFLOW_HTTP_SOURCE = <url of workflow-collector source created above in step 3>
- Add the sumo orb in the configuration file of the project to send custom data elements to Sumo Logic. You can find a sample config.yml file here.
Other Tools for build and deploy
The platform is ready to ingest logs and use those to light up corresponding build and deploy events related dashboards.
If you're using tools other than Jenkins and Bitbucket pipelines for Build and Deploy phases:
- Build: Configure your tool to construct and send events using the build event schema in the section Build Event.
- Deploy: Configure your tool to construct events using the deploy event schema in the section Deploy Events.