1. Go to this page and download the library: Download michaelesmith/metric-data 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/ */
michaelesmith / metric-data example snippets
use MetricData\Metric\Metric;
use MetricData\Storage\ClosureStorage;
$storage = new ClosureStorage(
function (MetricInterface $metric) use ($someAPI){
$someAPI->send($metric->getType(), $metric->getData());
}
);
$storage->store(
new Metric(
new \DateTime(),
'metric_collection_type',
7
)
);
use MetricData\Metric\Metric;
use MetricData\Storage\DelayedStorage;
use MetricData\Storage\NullStorage;
$storage = new DelayedStorage(new NullStorage());
$storage->store(
new Metric(
new \DateTime(),
'metric_collection_type',
7
)
);
$storage->store(
new Metric(
new \DateTime(),
'metric_collection_type',
5
)
);
$storage->store(
new Metric(
new \DateTime(),
'another_collection_type',
1
)
);
$storage->flush();
use MetricData\Metric\Metric;
use MetricData\Storage\FileStorage;
$storage = new FileStorage('var/metrics.json');
$storage->store(
new Metric(
new \DateTime(),
'metric_collection_type',
7
)
);
use KeenIO\Client\KeenIOClient;
use MetricData\Metric\Metric;
use MetricData\Storage\KeenIOStorage;
$client = KeenIOClient::factory([
'projectId' => $projectId,
'writeKey' => $writeKey,
]);
$storage = new KeenIOStorage($client);
$storage->store(
new Metric(
new \DateTime(),
'metric_collection_type',
7
)
);
use MetricData\Metric\Metric;
use MetricData\Storage\LoggingStorage;
use MetricData\Storage\NullStorage;
$logger = // Some PSR-3 compatible logger sucha as [monolog](https://github.com/Seldaek/monolog)
$storage = new LoggingStorage($logger, 'info', new NullStorage());
$storage->store(
new Metric(
new \DateTime(),
'metric_collection_type',
7
)
);
use MetricData\Metric\Metric;
use MetricData\Storage\MemoryStorage;
$storage = new MemoryStorage();
$storage->store(
new Metric(
new \DateTime(),
'metric_collection_type',
7
)
);
$storage->getMetrics(); // retrieves all metrics stored
$storage->count(); // gets the number of metrics stored in this request
$storage->first(); // gets only the first metric stored
$storage->last(); // gets only the last metrics stored
use MetricData\Metric\Metric;
use MetricData\Storage\MulitpleStorage;
use MetricData\Storage\NullStorage;
$storage = new MulitpleStorage([
new NullStorage(),
new NullStorage(),
new NullStorage(),
]);
$storage->store(
new Metric(
new \DateTime(),
'metric_collection_type',
7
)
);
use MetricData\Metric\Metric;
use MetricData\Storage\NullStorage;
$storage = new NullStorage();
$storage->store(
new Metric(
new \DateTime(),
'metric_collection_type',
7
)
);
use MetricData\Metric\Metric;
use MetricData\Storage\FileStorage;
use MetricData\Storage\LoggingStorage;
use MetricData\Storage\MemoryStorage;
use MetricData\Storage\MultipleStorage;
$storage = new LoggingStorage($logger, 'info', // will log all metrics to the application log
new MultipleStorage([
new FileStorage('var/metrics.json'), // provides a record of each metric stored
$memoryStorage = new MemoryStorage(), // can be retrieved by profiling tools like the Symfony toolbar
])
);
$storage->store(
new Metric(
new \DateTime(),
'metric_collection_type',
7
)
);
use MetricData\Metric\Metric;
use MetricData\Storage\NullStorage;
$storage = new NullStorage();
$storage->store(
new Metric(
new \DateTime(),
'metric_collection_type',
7
)
);
use KeenIO\Client\KeenIOClient;
use MetricData\Metric\Metric;
use MetricData\Storage\KeenIOStorage;
use MetricData\Storage\LoggingStorage;
$client = KeenIOClient::factory([
'projectId' => $projectId,
'writeKey' => $writeKey,
]);
$storage = new LoggingStorage($logger, 'info', // will log all metrics to the application log
$delayedStorage = new DelayedStorage( // allow the user response to be sent before performing the expensive API calls
new KeenIOStorage($client) // production metrics will be sent to an external api
)
);
$storage->store(
new Metric(
new \DateTime(),
'metric_collection_type',
7
)
);
// send user response
if (isset($delayedStorage)) {
$delayedStorage->flush();
}
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.