11/09/2013

Introducing a CLI for InfluxDB, the scalable datastore for time series of metrics and events

I can't say how much I'm excited by InfluxDB right now. For months I was looking for an alternative to the hard to scale RRDTool and Whisper projects and was even thinking to implement my own distributed time-series database. And then the guys at Errplane released InfluxDB.



InfluxDB is announced to be production ready before January but I wanted to play around with it already. Just to see with my own eyes if it was filling the gap for my use case at Redsmin. The client libraries are really new. The NodeJS client is only 1 day old as I'm writing this.


So as I tested InfluxDB against Redsmin monitoring service, I was looking for a way to write and execute InfluxDB SQL queries rapidly and display the results inside the terminal. Since InfluxDB, due to its maturity, lacks of tools, I decided to create my own InfluxDB-CLI.


npm install influxdb-cli -g

InfluxDB and InfluxDB-CLI have a long way to go before being production ready but I really hope it will help newcomers discover and use this amazing project.

10/21/2013

Redsmin is finally out of beta!

A little more than one year ago, I took the challenge to write a modern real-time Redis GUI in order to improve my workflow with Redis and to help me write, debug and monitor my Redis servers at Bringr, a real-time monitoring and publishing solution for creating value from social media activity.
Redsmin now helps daily thousands of developers around the world speeding up their workflow.
Read the entire article on Redsmin Blog
10/02/2013

How to do one-time expression evaluation of HTML5 data-* attributes in AngularJS

There are no easy way to do a one-time expression evaluation with AngularJS. The easiest way would be to code a directive but it's most of the time better to not reinvent the wheel.

Bindonce is a small library for AngularJS that provides one-time evaluation (thus zero watchers) for AngularJS. Since Bindonce 0.2+, it's now possible to evaluate any kind of attributes thanks to bo-attr-*.

Let's say we use bootstrap and want to specify dynamically some content generated by JavaScript inside our popover. Using bindonce we just have to write

<div bindonce ng-controller="MyCtrl">

  <div bo-attr 
       bo-attr-data-content="content" 
       bo-attr-data-html="isHtml" 
       bo-attr-data-title="title" 
       bo-attr-data-placement="placement" 
       data-toggle="popover">
    <i class="icon icon-question-sign"></i>
  </div>

</div>

Title, isHtml and content will be evaluated only one time and put inside attr-data-* attributes. From this point we could write our own directive to abstract the creation of our bootstrap popover but that's another story.
« »
 
 
Made with on a hot august night from an airplane the 19th of March 2017.