What Does a Site Reliability Engineer Do?

Although site reliability engineering has been around for a while, it has only recently gained fame in general software circles. But there are still a lot of questions as to what a site reliability engineer (SRE) does. Much of what we know comes from the book Site Reliability Engineering from Google. And we’ll refer to that book a few times in this post.

SREs have been compared to operations groups, system admins, and more. But the comparison falls short in encompassing their role in today’s modern software environment. They cover more responsibilities than operations. And though they usually have a background in system administration, they also bring software development skills to the role. SREs combine all these skills and ensure that complex distributed systems run smoothly.

So how do they do all this? Read further to find out how SREs accomplish this through the responsibilities they fulfill.

Read More

An In-Depth Guide to Nginx Metrics

In our guides Zen and the Art of System Monitoring and How to Monitor Nginx: The Essential Guide, we cover our monitoring philosophy. We also recommend a specific set of metrics to monitor and alerts to set for maximum Nginx happiness.

Here, we’d like to dive into the nitty-gritty of those essential Nginx metrics. We’ll discuss what exactly they mean and why they’re important. This will also serve as a primer for some of the (perhaps esoteric) terminology associated with web servers.

You can think of this as a companion the official Nginx documentation and as an appendix to our Nginx monitoring guide.

For now, this guide covers only the metrics available via ngx_http_stub_status_module, plus those associated with the F/OSS version of Nginx. More comprehensive metrics are available atngx_http_status_module. (This is included with the commercial version, Nginx Plus.)

So roll up your sleeves, grab your Slanket or Snuggie, and let’s talk Nginx metrics.

Read More

Getting Started Quickly With Angular Logging

The previous articles in this series covered the basics of logging in C#, Java, Python, Ruby, Node.js, and JavaScript. In this article, I’ll show you how to quickly get started logging in one of the most popular front-end development frameworks: Angular.

“But wait!” you might be thinking. “Do you mean Angular or AngularJS?” I mean both. After a bit of Angular history, we’ll look at logging with AngularJS first, and then we’ll use the current Angular version to show you logging in action.

Read More

Azure Functions Tutorial: Creating Your First Function

Azure Functions is the function-as-a-service (FaaS) offering from Azure—the equivalent of AWS Lambda from Amazon. FaaS is simply a platform to upload the application code, run, and manage the application without having to think about setting up any servers. You only pay for the time the application runs, and there’s also a free tier every month. Initially, a cup of coffee could be more expensive than running your function.

Today’s post is a tutorial on how to get started using Azure Functions. By the end of this post, you’ll be able to develop and run the app locally, then publish it to Azure to start using it. It’s going to be a straightforward app, but after you’ve finished the tutorial, you’ll be ready to create more complex applications.

Read More

Spring Boot Microservices—Examples to Help You Get Started

It can feel daunting to build a new microservice. It feels like there are a lot of things to keep in mind. Fortunately, Spring has a variety of libraries that can get us started quickly. We can focus on the bits that matter to us and let Spring scaffold the rest. In this post, we’re going to take a look at what makes microservices different from other types of applications and how Spring helps us get up and running fast.

Spring Boot microservices with Scalyr colors
Read More

Container as a Service: What Devs Need to Understand

It seems that everything today ends up being provided as a service. From infrastructure as a service (IaaS) to platform as a service (PaaS), it’s easy to get lost in what each of these do. And one of the newest entrants to this arena is container as a service (CaaS). Even as developers, we tend to get lost in the hype when trying to decipher all these terms. So, what does CaaS offer that’s different? And what do we need to know about its offerings?

In this post, we’ll take a look at what CaaS is and what it provides. We’ll also look at some of the pieces that make up a CaaS.

Read More

Kubernetes Tutorial: Learn the Basics and Get Started

It’s been over three years since Google open-sourced the Kubernetes project. Even so, you might still be wondering what Kubernetes is and how you can get started using it. Well, you’re in the right place! In this post, I’m going to explain the basics you need to know to get started with Kubernetes. And I won’t just be throwing concepts at you—I’ll give you real code examples that will help you get a better idea of why you might need to use Kubernetes if you’re thinking about using containers.

Read More

Getting Started Quickly With Django Logging

Django is one of the most popular Python web application frameworks, used by numerous organizations. Since it employs the built-in Python logging facility, logging in Django is a snap.

Still, there are a few specific Django configuration options to keep in mind. In this article, we’ll

  • create a Python virtual environment,
  • set up a small Django project to work with,
  • write a basic logging example,
  • configure the Django logger, and
  • explore the Django logging extensions.

If you want to skip writing code, you can find all of the code in this article over on GitHub.

Also, note that this article won’t go into details on the specifics of Python logging. If you want a primer on those, check out this previous post, Get Started Quickly With Python Logging, which covers the basics.

Now ready, set, log!

Read More

Why Distributed Tracing Will Be So Important in 2019

As we round the bend into 2019, it’s worth thinking about where our industry is headed. There are many exciting and challenging developments ahead: blockchain scalability, functions as a service, databases as a service—the list goes on. We’re also moving more and more into an increasingly complex, distributed world. This means distributed tracing will become especially important.

Read More

AWS Lambda Use Cases: 7 Reasons Devs Should Use Lambdas

AWS Lambda is Amazon’s serverless compute service. You can run your code on it without having to manage servers or even containers. It’ll automatically scale depending on how much work you feed into it. You can use it in data pipelines or to respond to web requests or even to compose and send emails. It’s the jack-of-all-trades way to execute code in the AWS cloud.

Although intended for use in the cloud, you can absolutely run Lambdas locally during development. When you do run Lambdas in the cloud, you’ll only pay for what you use. In some cases, this can save significant sums of money compared to the cost of running VMs or containers. While I’ve already touched on some of the reasons you’ll benefit from using AWS Lambdas, I want to focus on seven specific reasons in more detail.

7 lambda with scalyr colors
Read More