Skip to content

Instantly share code, notes, and snippets.

Keybase proof

I hereby claim:

  • I am joshuap on github.
  • I am joshuawood (https://keybase.io/joshuawood) on keybase.
  • I have a public key whose fingerprint is D3BB F6B6 9348 B77E 21EC 8176 3B5A E18B 78E3 1A12

To claim this, I am signing this object:

@joshuap
joshuap / nginx.conf
Last active December 8, 2016 02:49
NGINX basic authentication w/ Honeybadger support
http {
# Increase the size of allowed values in map directive.
map_hash_bucket_size 128;
# Set the $auth_basic variable based on the value of the Honeybadger-Token header.
map $http_honeybadger_token $auth_basic {
default "Restricted Content";
"5245586210a715a83dfa8c6395226a19f7e46a6b647cc349b0479e92a4c43e42" "off";
}
@joshuap
joshuap / Gemfile
Last active April 20, 2016 15:54
RSpec expect_any_instance_of inheritance bug
source 'https://rubygems.org'
gem 'rspec', '3.4.0'
@joshuap
joshuap / assigned.json
Last active August 29, 2015 14:16
Example outage payloads for Honeybadger WebHooks
{"event":"assigned","message":"[Crywolf/production] RuntimeError assigned to Benjamin Curtis by Joshua Wood","actor":{"id":3,"email":"josh@hintmedia.com","name":"Joshua Wood"},"fault":{"project_id":1717,"klass":"RuntimeError","component":"pages","action":"caused_exception","environment":"production","resolved":true,"ignored":false,"created_at":"2015-07-21T20:06:20.046Z","comments_count":4,"message":"This is the third cause raised at 2015-07-21 13:06:19 -0700","notices_count":1,"last_notice_at":"2015-07-21T20:06:20.000Z","tags":[],"id":14108233,"assignee":"ben@bencurtis.com"},"assignee":{"id":1,"email":"ben@bencurtis.com","name":"Benjamin Curtis"}}
@joshuap
joshuap / block_allocations.rb
Created March 6, 2015 20:00
Object allocations when calling block parameter vs. yielding implicitly.
require 'allocation_stats'
GROUP_BY = [:sourcefile, :sourceline, :class]
def block_without_param
yield
end
def block_with_param(&block)
block.call
@joshuap
joshuap / Gemfile
Last active August 29, 2015 14:05
CarrierWave
# File uploads
gem 'carrierwave'
# Image processing
gem 'mini_magick'
# S3 file storage
gem 'fog'
@joshuap
joshuap / .gitconfig
Created May 2, 2014 23:44
Josh's .gitconfig
[core]
excludesfile = ~/.gitignore
editor = mate -w
whitespace = trailing-space,space-before-tab
[apply]
whitespace = fix
[color]
ui = true ;doesnt work for some reason ...
@joshuap
joshuap / gist:11292337
Last active August 29, 2015 14:00
Google script to analyze SaaS cancellation emails and deliver a word cloud to the account owner. Install into https://script.google.com
// Requires the Word Cloud Lib extension to be installed prior to running:
// https://sites.google.com/site/scriptsexamples/custom-methods/other-libraries/word-cloud-library
function deliverCancellationThemes() {
var threads = GmailApp.search('subject:User Cancelled', 0, 100);
var messagesforCancellationThreads = GmailApp.getMessagesForThreads(threads);
var input = '';
for(i in messagesforCancellationThreads) {
for(j in messagesforCancellationThreads[i]) {
var body = messagesforCancellationThreads[i][j].getPlainBody();
Logger.log(body);
@joshuap
joshuap / payload.json
Created January 20, 2014 17:14
Honeybadger WebHook payload: :occurred event
{
"event":"occurred",
"message":"[Crywolf/test] RuntimeError - oops",
"fault":{
"id":3151009,
"project_id":1717,
"klass":"RuntimeError",
"component":null,
"action":null,
"environment":"development",
@joshuap
joshuap / en.yml
Created January 20, 2014 16:59
Honeybadger Feedback I18n keys
# config/locales/en.yml
en:
honeybadger:
feedback:
heading: "Care to help us fix this?"
explanation: "Any information you can provide will help our technical team get to the bottom of this issue."
submit: "Send"
thanks: "Thanks for the feedback!"
labels:
name: "Your name"