Skip to content

Instantly share code, notes, and snippets.

View mbrevoort's full-sized avatar

Mike Brevoort mbrevoort

View GitHub Profile
@mbrevoort
mbrevoort / gist:1066102
Created July 5, 2011 22:22
node start-up error
node /opt/toolbar/app-cluster.js 8080
node.js:134
throw e; // process.nextTick error, or 'error' event on first tick
^
Error: EBADF, Bad file descriptor '/opt/toolbar/package.json'
at Object.openSync (fs.js:221:18)
at Object.readFileSync (fs.js:112:15)
at Object.<anonymous> (/opt/toolbar/app-cluster.js:12:34)
at Module._compile (module.js:404:26)
@mbrevoort
mbrevoort / index.html
Created December 3, 2011 07:33
Dojo Stateful Replication over Socket.io
<!DOCTYPE html>
<html>
<head>
<title>Dojo Stateful Replication</title>
<script>
var dojoConfig = {
baseUrl: '/js/dojo/1.7.0/dojo',
};
</script>
<script src="/js/dojo/1.7.0/dojo/dojo.js"></script>
@mbrevoort
mbrevoort / load.js
Created February 19, 2012 02:57
Simple ab style load generator
// requires request, measured, optimist and microtime npm modules
var util = require('util')
, request = require('request')
, microtime = require('microtime')
, measured = require('measured')
, collection = new measured.Collection('http')
, argv = require('optimist').usage('node load.js -c [concurrent] -n [total] url').argv;
var c = argv.c || 1
, n = argv.n || 1, uri = argv._[0]
@mbrevoort
mbrevoort / client.js
Created February 25, 2012 00:19
Simple proxy/service registration
var DNode = require('dnode'),
argv = require('optimist')
.usage('Usage: $0 --p [num] --pp [num] --name [str]')
.demand(['pp', 'name'])
.argv,
sprintf = require('sprintf').sprintf,
http = require('http'),
util = require('./util'),
DNode = require('dnode'),
logf = require('./util').logf,
@mbrevoort
mbrevoort / setup-statsd.sh
Created April 29, 2012 23:10 — forked from jasonroelofs/setup-statsd.sh
Turn an Ubuntu 10.10 EC2 into a StatsD/Graphite server
# install git
sudo apt-get --yes install g++ curl libssl-dev apache2-utils
sudo apt-get --yes install git-core
# download the Node source, compile and install it
git clone https://github.com/joyent/node.git ~/node
cd ~/node
./configure
make
sudo make install
# install the Node package manager for later use
@mbrevoort
mbrevoort / statsd.js
Created April 30, 2012 14:18
Simple Counter/Timer Statsd Node Client
var dgram = require('dgram');
module.exports = function (port, host) {
return new function() {
this._host = host || '127.0.0.1';
this._port = port || 8125;
this._client = dgram.createSocket("udp4");
this._send = function (message) {
console.log('STATSD', message);
@mbrevoort
mbrevoort / package.json_private_module
Created July 26, 2012 03:08
private npm repo namespace idea so that private registries don't have to replicate the entire public NPM registry or you don't have to do some sort of conditional proxying.
// A module published to a private registry would optionally have a "registry"
// property that is a reference to the registry where this module is published.
//
// A `npm publish` would publish to the registry in the registry property.
//
// Otherwise, `npm --registry http://private.me:5984/registry/_design/app/_rewrite publish`
//
{
"name": "foo",
@mbrevoort
mbrevoort / isActive.js
Last active December 16, 2015 07:09
Simple browser IsActive - periodically emit if a user is active or still active, emit if inactive.
// var isActive = new IsActive(10000, window);
// isActive.on('active', function () { console.log('active') });
// isActive.on('inactive', function () { console.log('inactive') });
// isActive.start();
var IsActive = function (timerPeriod, g) {
timerPeriod = parseInt(timerPeriod) || 60000;
if (!g) g = window;
var ACTIVE = true,
@mbrevoort
mbrevoort / desktopNotification.js
Last active December 16, 2015 20:38
A basic AnguarlJS webkit notification service that only notifies when the window is not focused.
app.factory('desktopNotification', function ($window, $document) {
var focused = true;
var onFocus = function () { focused = true; };
var onBlur = function () { focused = false; };
if (/*@cc_on!@*/false) { // check for Internet Explorer
$document.onfocusin = onFocus;
$document.onfocusout = onBlur;
@mbrevoort
mbrevoort / LogstashUDP.js
Created June 24, 2013 06:55
A simple Logstash UDP logger for Winston.
// Really simple Winston Logstash UDP Logger
var dgram = require('dgram'),
util = require('util'),
os = require('os'),
winston = require('winston');
var LogstashUDP = module.exports = function (options) {
winston.Transport.call(this, options);
options = options || {};