Integrating Azure DevOps CI/CD pipeline with railtown.ai

by

Khalid Ansari

June 14, 2021

4 Min

reads

Integrating your application with railtown.ai involves the following 3 things:

  1. Sending your logs to railtown.ai, covered in other blog posts
  2. Letting railtown.ai know when you successfully complete a build and when you deploy the build to an environment, covered in this blog post
  3. Integrating with your ticketing system so that railtown.ai can pull your ticket data and add tickets to your ticketing system, covered in other blog posts

If you do all 3 of these things you will be able to leverage the full AI powered capabilities of railtown.ai to help you find quick resolutions to the problems plaguing your application.

The following sections show you how to set up Azure DevOps Pipelines and Releases to let railtown.ai know when your builds and deployments are successfully completed.

Difficulty 1: Raw errors are bulky and messy

To let railtown know when a build successfully completes you need to create a new Service hook under Project Settings


Choose the Web Hooks service


Choose the Build completed trigger, your Build pipeline and a Build Status of Succeeded

Go to your railtown.ai Project settings CI/CD section and expand the Azure DevOps CI/CD section


Copy the Build Webhook


Paste the Build Webhook into the Azure DevOps service hook URL

Choose 2.0-preview.2 for the Resource Version and Finish creating your service hook


Congratulations you have successfully integrated your builds with railtown.ai

Next time you do a build railtown.ai will be informed of the successful build.

Let railtown.ai know when a build is deployed to an environment

Create a Service Connection

To let railtown know when a build is deployed successfully to an environment you first need to create a new Service connection under Project Settings


Choose the Generic service connection type

Go to your railtown.ai Project settings CI/CD section and expand Azure DevOps CI/CD section and scroll down to the Deployment Integration section


Copy the Deployment Webhook URL


Paste the Deployment Webhook URL into the Server URL field in the New Generic service connection, enter a Service connection name and click Save


Create a Release Post-deployment Gate

Next we are going to add a post-deployment gate to your release pipeline. Edit your release pipeline  and click the icon to the right of your pipeline stage, turn on the switch for Gates, click the Add button and choose Invoke REST API

Go back to your railtown.ai project configuration as you will need to copy the Headers and Body content. Before copying the Body content ensure you have selected the correct environment for your application


Go back to your post-deployment gate setup and choose Task version 1.*, enter a Display name, select the service connection you created earlier and paste in the Headers you copied from the railtown.ai configuration


Next copy the Body from the railtown.ai configuration ensuring that you selected the environment that matches with your pipeline deployment


Click the Save button.

Repeat the above steps for creating the post-deployment gate above for any other environments in your pipeline.

Congratulations you have successfully integrated your deployments with railtown.ai

Next time you release a build to an environment railtown.ai will be informed of the successful deployment to that environment.

The Builds page in railtown.ai will show you which builds are deployed to which environments.

To get the full AI powered capabilities of railtown.ai working for you make sure you also integrate your ticketing system so that railtown.ai can look at the logs coming in from your environments, bucket them into similar exception buckets, match them with the build deployed to that environment and then match it with tickets that may have resulted in causing the problem.

If you don’t already have a railtown.ai account sign up and let us help you improve the quality of your software and increase your developer velocity.

Keep reading

AppInsightsBest Tools to Integrate with Railtown.ai

Railtown.ai helps you gather the information you need to efficiently resolve an error, but by combining our application with other tools can take your developer workflow to the next level. So today, we’d like to go through 2 popular tools that we recommend for expanding your team’s capabilities: New Relic and Azure Application Insights.

by

Marwan Haddad

January 6, 2023

5 Min.

reads

CultureHow to Build a Positive Culture Within Development Team on Debugging

Too many software development teams treat error logging as a burden rather than a chance to grow.That’s why Jeli’s “Howie: Post-Incident Guide” felt like a breath of fresh air. In the guide, Jeli’s team notes that negative treatment of bugs is everywhere, including the language we use to describe software development. Terms like “post-mortem” and “root-cause analysis” speak for themselves.We’d like to build on the suggestions put forward in Howie and share our perspective on error logging as well. So let’s take a look at how a small mindset shift around debugging could encourage more positive moments in your team.

by

Marwan Haddad

December 1, 2022

5 Min

reads

Error BucketNode.js Monitoring: Performance Monitoring Best Practices

Plenty of developers who start coding in Node.js do so because of how easy it is to get started. But once you are ready to take your application to the next level, you need to take a step back. Why did you choose to build in Node.js, and where do you want to take your application from here? To scale your Node.js application, you need to figure out just how to use performance monitoring to your advantage.

by

Marwan Haddad

November 21, 2022

5 Min

reads