Technical Resources
Educational Resources
Connect with Us
At Papertrail we are software engineers who are passionate about programming, debugging, logging and pretty much everything about building and running applications. We enjoy keeping our coding skills sharp and playing with new technologies. Below are some of things we have picked up along the way.
Fully Functional for 14 Days
Last updated: February 26, 2024
Life would be much simpler if applications running inside containers always behaved correctly. Unfortunately, as every sysadmin and developer knows, that is never the case. When things inevitably start going wrong you need diagnostic information to figure out how and why. Being able to gather useful information from your Docker container logs can mean the difference between a minor issue and a critical outage.
Last updated: February 5, 2024
HAProxy (high availability proxy) is a critical part of modern systems infrastructure. It’s ideally the first point of contact for users who access your application. When configured correctly, HAProxy improves your app’s performance significantly. Through load balancing, HAProxy makes sure each service your application depends on is accessible to users, especially under load conditions otherwise impacting application performance.
Last updated: February 5, 2024
After the introduction of Docker, the life of a developer became much easier. Kubernetes solved many problems and offloaded the task of setting up all the necessary runtimes, libraries, and servers from developers. For small projects, it was enough. However, managing multiple containers for bigger applications becomes difficult. Fortunately, Kubernetes solves that problem, making complex deployments easy. However, using Kubernetes also creates a few new problems, such as memory usage issues. In this post, you will learn how to use logging efficiently to find and avoid common issues with misconfigured resource allocation in Kubernetes.
Last updated: February 1, 2024
.NET 5 is a shifting point for the .NET ecosystem, bringing Mono, Xamarin, and .NET development into a single codebase. Almost a year later, however, there’s still some confusion lingering, especially when it comes to migrating your old apps.
Last updated: January 22, 2024
The allure of quickly spinning up an app on a platform as a service (PaaS) instead of cobbling together a solution on an infrastructure as a service (IaaS) makes Heroku an appealing option for many developers. With the explosive growth in the platform as a service market, new features and capabilities are continually rolling out. Along with the fast-paced evolution of Heroku comes an increase in complexity, which can create challenges for application developers.
Last updated: January 22, 2024
Logging is an essential part of any application, no matter the tech stack or service to which you deploy. When things go wrong in production, logging might just save you from going blind when trying to fix the issue.
In this post, you’ll see how to implement logging for your .NET 5 Asp.NET app on Azure Web Apps.
Last updated: January 18, 2024
Modern garbage collectors use sophisticated algorithms to manage unused memory, so you don’t have to. But when things aren’t working right, you need a way to peek under the hood and troubleshoot issues. Analyzing garbage collection (GC) logs can provide key insights into the behavior and performance of programming languages using automatic memory management, such as Java. If you suspect you’ve got a memory problem with your Java app, the GC log is the first place to look.
Last updated: January 18, 2024
Robust application logging is central to any quality strategy. Unfortunately, many quality strategies fall short, implementing logging in a less-than-stellar way. Java application logging is no different. And since we’re talking about one of the most popular programming languages, investments in improving the overall Java logging strategy could pay off many dividends in the future.
Last updated: January 16, 2024
Mobile app crashes can be a real headache in the world of software development. They not only lead to user frustration and productivity loss but also tarnish your organization’s reputation. As a mobile developer, one of the most valuable tool in your troubleshooting arsenal is the Crash log.
When mobile apps crash, they generate logs that contain some information related to where the issues that caused the crash occurred. Taking a look at the log is one place to start your effort toward diagnosing and fixing the crash.
Last updated: December 18, 2023
Microservice architectures bring significant benefits to software teams. Microservices allow a team to scale individual parts of their application independently. They provide huge benefits in resilience, too. An application with a memory leak in a troublesome spot is a big problem for a monolithic architecture. One bug takes down the whole system and leads to extended outages. With a microservice architecture, a memory leak only takes down one part of the swarm. However, there are downsides to the microservice approach. For starters, microservices complicate deployment plans. While you can solve some of those complications with orchestration tools, it’s another layer of technology in your stack.
Fully Functional for 30 Days
Contact our team, anytime.