/**
  * @iterations 1000
  */
 public function counterTagsNamePrefixMultiValue()
 {
     $this->collectorTagsPrefix->counter('event_name', ['internal' => 10, 'external' => 20]);
 }
<?php

/**
 * User: Maksim Naumov <*****@*****.**>
 * Date: 6/18/15
 * Time: 9:30 PM
 */
$loader = (require __DIR__ . '/../vendor/autoload.php');
use Hitmeister\Component\Metrics\Buffer\OnShutdownBuffer;
use Hitmeister\Component\Metrics\Collector;
use Hitmeister\Component\Metrics\Handler\StatsDaemonHandler;
// Create new handler
$handler = new StatsDaemonHandler('127.0.0.1', 8125);
// Create buffer
$buffer = new OnShutdownBuffer();
$buffer->setHandler($handler);
// Create new collector and set buffer
$collector = new Collector();
$collector->setBuffer($buffer);
// Increment some stats
for ($i = 0; $i < 100; $i++) {
    $collector->increment('stats_' . $i);
}
// All metrics will be flushed to the stats daemon after script shutdown
// It uses `register_shutdown_function` function under the hood
<?php

/**
 * User: Maksim Naumov <*****@*****.**>
 * Date: 6/18/15
 * Time: 9:30 PM
 */
$loader = (require __DIR__ . '/../vendor/autoload.php');
use Hitmeister\Component\Metrics\Collector;
use Hitmeister\Component\Metrics\Handler\StatsDaemonHandler;
// Create new handler
$handler = new StatsDaemonHandler('127.0.0.1', 8125);
// Create new collector and set handler
$collector = new Collector();
$collector->setHandler($handler);
// Increment one stats
$collector->increment('hello_world');
// Increments `one_long_task` counter and reports used memory and elapsed time
$collector->closure('one_long_task', function () {
    for ($i = 0; $i < 1000; $i++) {
        usleep(100);
    }
});
<?php

/**
 * User: Maksim Naumov <*****@*****.**>
 * Date: 6/18/15
 * Time: 9:30 PM
 */
$loader = (require __DIR__ . '/../vendor/autoload.php');
use Hitmeister\Component\Metrics\Collector;
use Hitmeister\Component\Metrics\Handler\InfluxDb\UdpHandler;
// Create new handler
$handler = new UdpHandler('127.0.0.1', 4444);
// Create new collector and set handler
$collector = new Collector();
$collector->setHandler($handler);
// Set global tags
$collector->setTags(['env' => 'development', 'instance' => 'web01']);
// Increment one stats
$collector->increment('hello', ['operation' => 'world']);
// Increments `one_long_task` counter and reports used memory and elapsed time
$collector->closure('one_long_task', function () {
    for ($i = 0; $i < 1000; $i++) {
        usleep(100);
    }
});
Exemple #5
0
 /**
  *
  */
 public function testClosureError()
 {
     /** @var m\MockInterface|BufferInterface $mockBuffer */
     $mockBuffer = m::mock('\\Hitmeister\\Component\\Metrics\\Buffer\\BufferInterface');
     $mockBuffer->shouldNotReceive('addBatch');
     $exception = null;
     $collector = new Collector();
     $collector->setBuffer($mockBuffer);
     try {
         $collector->closure('closure_metric', 'no_function');
     } catch (\Exception $e) {
         $exception = $e;
     }
     $this->assertInstanceOf('\\LogicException', $exception);
 }