Vagrant Hostsupdater Requires Admin

VagrantPress and VVV use the Vagrant::Hostsupdater plugin to allow you to access your development WordPress sites at a friendlier URL (e.g. http://vagrantpress.dev instead of http://localhost:8080). On Windows machines, the plugin updates the file at C:\Windows\System32\drivers\etc\hosts, but modifying this files requires admin access. You must run your shell as an administrator for the plugin to be able to update this file when you vagrant up. BONUS: I’ve seen a lot of people installing Cygwin or Putty just to be able to use Vagrant on Windows (since it requires SSH)....

July 12, 2015

User Email Addresses with Go-GitHub

I’ve been working on a new web app lately and decided to allow users to sign up and log in with their GitHub account. I’m using go-github to interact with the GitHub API and with this library there are two different ways to get a user’s email address. If you want to get the current user’s primary email address, use the Users.ListEmails() method. This method returns all the emails associated with the GitHub user and indicates whether the email address is their Primary address....

June 8, 2015

Flush Async Output Events

The System.Diagnostics.Process class provides the options to retrieve all output from an external process after it has completed, or to retrieve events containing the output as the execution occurs. The option to receive asynchronous output events is useful in scenarios where you need to provide user feedback or log the output when timeouts occur. When receiving asynchronous output events, you must ensure that the external process has completed when you want to make sure that you get all the output....

May 19, 2015

KENS Structured Logging Slides

Last month I gave a presentation on using Serilog, Elasticsearch and Kibana for logging from an application. You can see the slides from that presentation below. I’ve had a lot of success with this trio lately. It has provided a lot of details about what is going on in my application that would have been more difficult to obtain before.

May 11, 2015

Good Habits for Structured Logging with Serilog

Below is a collection of good habits I’ve identified in my recent experiences with structured logging. The code examples are specific to Serilog, but the ideas can be applied to other structured logging tool sets (my stack of choice for .NET projects is Serilog, Elasticsearch and Kibana). Got your own structured logging practices to contribute? Share them on Twitter! EventID When you create you log events, include an EventID property to uniquely identify the event....

March 3, 2015