PHP code example of chaseisabelle / phprom-client
1. Go to this page and download the library: Download chaseisabelle/phprom-client library . Choose the download type require .
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
chaseisabelle / phprom-client example snippets
// connect to the server using grpc
$phprom = new PHProm('127.0.0.1:3333');
// or
$phprom = new PHProm('127.0.0.1:3333', PHProm::GRPC_API);
// or connect to the server using rest/http
$phprom = new PHProm('127.0.0.1:3333', PHProm::REST_API);
print($phprom->get());
// or...
echo $phprom->get();
$counter = (new Counter($phprom))
->setNamespace('namespace')
->setName('name')
->setDescription('description')
->setLabels(['label1', 'label2']); //<< optional
$counter->record(
1.2345,
['label1' => 'foo', 'label2' => 'bar']
);
$histogram = (new Histogram($phprom))
->setNamespace('namespace')
->setName('name')
->setDescription('description')
->setLabels(['label1', 'label2']) //<< optional
->setBuckets([0.1, 0.5, 1, 2, 5]); //<< optional
$histogram->record(
1.2345,
['label1' => 'foo', 'label2' => 'bar']
);
$summary = (new Summary($phprom))
->setNamespace('namespace')
->setName('name')
->setDescription('description')
->setLabels(['label1', 'label2']) //<< optional
->setObjectives([0.1, 0.5, 1, 2, 5]) //<< optional
->setMaxAge(0) //<< optional
->setAgeBuckets(0) //<< optional
->setBufCap(0); //<< optional
$summary->record(
1.2345,
['label1' => 'foo', 'label2' => 'bar']
);
$gauge = (new Gauge($phprom))
->setNamespace('namespace')
->setName('name')
->setDescription('description')
->setLabels(['label1', 'label2']); //<< optional
$gauge->record(
1.2345,
['label1' => 'foo', 'label2' => 'bar']
);
$histogram = (new Histogram($phprom))
->setNamespace('namespace')
->setName('name')
->setDescription('description')
->setLabels(['label1', 'label2'])
->setBuckets(range(1, 10));
$timer = new Timer($histogram);
$timer->start();
sleep(rand(1, 10));
$timer->stop()
->record(['label1' => 'foo', 'label2' => 'bar'])
->reset();
$phprom->registerCounter(
'namespace',
'name',
'description',
['label1', 'label2'] //<< optional
);
$phprom->recordCounter(
'namespace',
'name',
1.2345,
['label1' => 'foo', 'label2' => 'bar']
);
$phprom->registerHistogram(
'namespace',
'name',
'description',
['label1', 'label2'], //<< optional
[0.1, 0.5, 1, 2, 5] //<< custom buckets, optional
);
$phprom->recordHistogram(
'namespace',
'name',
1.2345,
['label1' => 'foo', 'label2' => 'bar']
);
$phprom->registerSummary(
'namespace',
'name',
'description',
['label1', 'label2'], //<< optional
[0.1, 0.5, 1, 2, 5], //<< objectives, optional
0, //<< max age, optional
0, //<< age buckets, optional
0 //<< buf cap, optional
);
$phprom->recordSummary(
'namespace',
'name',
1.2345,
['label1' => 'foo', 'label2' => 'bar']
);
$phprom->registerGauge(
'namespace',
'name',
'description',
['label1', 'label2'] //<< optional
);
$phprom->recordGauge(
'namespace',
'name',
1.2345,
['label1' => 'foo', 'label2' => 'bar']
);