Categories

  • No categories

Announcing What Matters: A podcast from the folks at Mattermost

It is with great pleasure and excitement that the Community Team at Mattermost announces the release of our new podcast – What Matters: A Podcast from the folks at Mattermost! We’ve taken a look at all the things we enjoy about the communities we are a part of, Open Source, ChatOps, DevOps, Go, and everything …

Mattermost integrations: Requesting data with slash commands

Slash commands are the easiest way to send requests from channels and direct messages to other programs (Originally published at controlaltdeliet.be) In the first two installments in this series, you learned you learned how to send alerts with incoming webhooks and request data with outgoing webhooks. In this article, you will learn how to set …

Mattermost integrations: Sending and receiving data with outgoing webhooks

Outgoing webhooks are the easiest way to send a request or data to another program from a public channel (Originally published at controlaltdeliet.be) In a previous article, you learned how to receive data from an external source. In this article, you learn how to send a request or data to an external source using outgoing webhooks. As …

Improving performance (and more) through load testing

Have you ever wondered how many active users your application can handle at the same time? If so, you’re not alone. Here at Mattermost, we’re building a highly concurrent messaging platform for team collaboration that needs to potentially serve up to several thousands of users simultaneously. While standard functional testing (e.g., unit tests) is critical …

Mattermost integrations: Sending alerts to a channel with an incoming webhook

Incoming webhooks are the easiest way to let other programs send messages to Mattermost (Originally published at controlaltdieliet.be) Last week, we shared an introduction on how to use incoming webhooks to integrate with Mattermost. Here’s an example of how to use them in action. Monitoring refrigerator temperatures Our fridges need to retain a constant temperature. When …

Modern ways of end-to-end testing with Cypress JS

Why write tests ? The ultimate goal of writing tests should be improving the user’s in-app experience and increasing developers’ confidence in shipping new or improved apps. The Mattermost team has been continuously writing different types of tests to improve the product. Such extensive automated testing has enabled them to ship a new release—with new …

Automated UI testing with Cypress

It’s been more than a year-and-a-half since we started using Cypress for our automated functional testing, and it has been well worth the investment. Cypress has now become an essential part of our process to automate regression testing, which helps us ship new releases faster, with increased quality. Getting started with Cypress is fun and …

Layered store and struct embedding in Go

One of the most important parts of the Mattermost source code is the one responsible for accessing the Mattermost database: the store. Every single database access is handled by the store, so we needed to find a way to extend its functionality while introducing as little complexity as possible. This is the reason behind the …

Monitoring the Mattermost server with Prometheus and Grafana

Lately we’ve been working on improving different parts of the Mattermost server, including our monitoring and observability capabilities. We’ve been using Prometheus and Grafana to monitor our cluster for a while now, and you can read this great post where my colleague Stylianos explains how we have them working for our multi-cluster environment.  In this …

OpenTracing for Go projects

What is distributed tracing? Large-scale cloud applications are usually built using interconnected services that can be rather hard to troubleshoot. When a service is scaled, simple logging doesn’t cut it anymore and a more in-depth view into system’s flow is required. That’s where distributed tracing comes into play; it allows developers and SREs to get a detailed …

Get the latest updates, releases, and more—delivered to your inbox.

We use cookies for advertising, social media and analytics purposes. Read about how we use cookies here. By continuing to use this site, you consent to our use of cookies.