Windows Bitlocker Red Screen

Windows Bitlocker Red Screen

I recently joined my laptop (does not have a TPM) to a Samba 4 domain (more about that later). As part of this process I also enabled Bitlocker and was able to successfully encrypt the drive. However, upon boot the screen would show a red/orange screen with vertical white lines when you would expect to see the Bitlocker prompt. Several articles are around and talk about this being caused by a Windows update from 2016. One fix is to reinstall…

Read More Read More

When does “a little code” become “a lot of trouble”

When does “a little code” become “a lot of trouble”

During my career I’ve come from a technical background to a more strategic position and picked up several memorable lessons along the way.  One of those is especially relevant to me in my current role where I have to decide on pursuing a short-term fix (while pursuing the long-term solution) or have the disciple to go the long-term route without a workaround.  I’m personally biased towards the short-term fix, so it’s been a good lesson that has saved me trouble…

Read More Read More

NFSv3 Usage and Audit Logging

NFSv3 Usage and Audit Logging

It seems counter-intuitive that something that is as old and widespread as NFS would be severely lacking in the access logging area.  However, that does indeed appear to be the case.  Recently I’ve been able to take a break from my project management related activities to spend some time in something deeply technical to help prevent myself from getting stale.  The scenario started out very simply: take advantage of a hardware lifecycle refresh to move a legacy service that is…

Read More Read More

EXEC useradd in Docker fills hard drive on host

EXEC useradd in Docker fills hard drive on host

I recently discovered the hard way while building a Docker Image that when you add a user with an abnormally large UID it will eat an exorbitant amount of disk space on your Docker host.  The bug that lead me to this conclusion is here, and the fix is easy, just use the “-l” flag with the useradd command,  But my original run left me in a pickle.  In this one case, I can’t add enough disk space to my…

Read More Read More

Python Exception inside Try/Except Statement

Python Exception inside Try/Except Statement

Recently I was fighting with a scenario where I was throwing an exception but couldn’t figure out why the exception was actually happening.  I’ve created a much simpler example below to demonstrate what I learned during the process of solving this. The simplified scenario is as follows:  I have a Python Module that calls another module to do some work that is wrapped in a try/except.   Code is shown below.     Here’s the problem: when I run the code,…

Read More Read More

Playing with Wavefront – Network Packet Loss

Playing with Wavefront – Network Packet Loss

Now that we know when an agent goes offline, let’s create a query to detect when our devices experience an increased rate of dropped packets. To do that we’ll create 2 queries, the first is our data on all dropped packets per source. [code language=”bash”] sum(mavg(5m,ts("net.drop.*", source="FQDN,sub.domain.com" )),sources) [/code] This value is represented with the blue line in the below chart. That’s great, but we want to detect a change in trends, not just alert on a static threshold. To…

Read More Read More

Playing with Wavefront – Missing Agents

Playing with Wavefront – Missing Agents

One of the first things that we need to detect when using Wavefront is if one of our endpoints goes silent. To do that, anyone can use the Query Wizard to create a basic alerting query. In this example I’m going to use the “system.uptime” metric as my base in the Alert Wizard’s magic sauce with a 1 minute time window. The Query Wizard shows me quite nicely that I’ve had a couple outages in the past.  But, if you…

Read More Read More

Getting Started – Wavefront by VMware – Queries

Getting Started – Wavefront by VMware – Queries

Ok, let’s chat about Wavefront’s UI and getting value from our data! This is the most user-friendly product that I’ve used for time series data! Let’s explore a quick example using disk space to showcase some of that functionality. Telegraf only sends raw values for: Total Space Free Space Used Space This is seen below where I have intentionally limited the results to a single host and single disk object. We have ~55 GB Total and ~30 GB Free. What…

Read More Read More

Wavefront by VMware – Missing Metrics – Point outside of reasonable timeframe

Wavefront by VMware – Missing Metrics – Point outside of reasonable timeframe

I ran into an issue where metrics were not showing up in Wavefront and wanted to share the solution. Bottom line, if you send any metrics to the Wavefront Proxy, they absolutely must be in nanoseconds. Here’s why: I have an application that sends telemetry via Telegraf’s Socket Listener Input Plugin, and the telemetry timestamp was in milliseconds. What happened is that none of the data was recorded in Wavefront. Instead, inside of the /var/log/wavefront/wavefront.log there were entries stating that…

Read More Read More

Getting Started – Wavefront by VMware – Telegraf Agents

Getting Started – Wavefront by VMware – Telegraf Agents

Wavefront, as a TSDB utilizes a wide range of Collectors to gather time series data from various devices. Most of these collectors utilize a, currently forked, version of the popular Telegraf Agent. A preview of this out-of-box functionality is shown below. This forked agent includes and Output Plugin for the Wavefront Protocol and the changes can be seen in the Github Pull Request which is currently in version 1.5 RC1 of the native Telegraf Agent! Once Telegraf 1.5 releases, there…

Read More Read More