Code Monkey home page Code Monkey logo

stats's Introduction

Capistrano Statistics

In order to better support Capistrano, this gem (and the server, and dashboard included) is intended to collect (when enabled, via the prompt) metrics about how Capistrano is used, it collects a line which looks something like this:

1|2014-07-16T22:56:30+02:00|2.1.1|x86_64-darwin13.0|2.15.5|90f7c671
│ │                         │     │                 │      │
│ │                         │     │                 │      └── Anon project UUID (see below)
│ │                         │     │                 │
│ │                         │     │                 └── Capistrano version.
│ │                         │     │
│ │                         │     └── Ruby platform identifier RUBY_PLATFORM.
│ │                         │
│ │                         └── Ruby interpreter version, RUBY_VERSION.
│ │
│ └── Current datestamp according to your machine ISO8601 formatted.
│
└── Protocol number, reserved incase we change the format some day.

The "Anon project UUID" is the first 8 bytes of the hex encoded MD5 sum of your Git "origin" server, if you are using Git.

This allows us to track an approximate value for "how many projects use Capistrano", versus tracking individual executions of projects. i.e if you work on your project together with one or more other people, and you deploy three times during a day, for that day we will register three deploys, but a single "unique deploy".

If you are not using Git, or do not have a "remote" defined, this field will read not-git. We may expand in future stats versions to also enumerate the subversion, mercurial, etc hosts, but not-git will help us track how important each of the other source control tools might be to support.

Example Projects

Two very thin skeleton projects demonstrate how to use the metrics collection with both version two and three for testing purposes:

$ cd ./examples/capistrano-2.x/
$ bundle
$ CAPISTRANO_METRICS=127.0.0.1:1200 bundle exec cap default
  triggering start callbacks for `default'
  * 2014-07-16 23:38:24 executing `metrics:collect'
  * 2014-07-16 23:38:24 executing `default'
  Done
$ cd ./examples/capistrano-3.x/
$ bundle
$ CAPISTRANO_METRICS=127.0.0.1:1200 bundle exec cap default --trace
  ** Invoke metrics:collect (first_time)
  ** Execute metrics:collect
  ** Execute deploy:starting
  Done
  ** Execute default
  ** Invoke load:defaults (first_time)
  ** Execute load:defaults

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.