tray-labs / laravel-influxdb by tray-labs

A service made to provide, set up and use the library from influxdata influxphp in Laravel.
103,450
69
3
Package Data
Maintainer Username: tray-labs
Maintainer Contact: dev@traylabs.com.br (Tray Labs)
Package Create Date: 2017-06-09
Package Last Update: 2024-03-01
Home Page:
Language: PHP
License: MIT
Last Refreshed: 2024-03-27 03:22:34
Package Statistics
Total Downloads: 103,450
Monthly Downloads: 2,789
Daily Downloads: 125
Total Stars: 69
Total Watchers: 3
Total Forks: 33
Total Open Issues: 2

Laravel Influxdb

A service made to provide, set up and use the library from influxdata influxdb-php in Laravel.

Installing

  • Add this line to require section of composer.json and execute on your terminal $ composer install
"require": {
    "tray-labs/laravel-influxdb": "*"
}
  • Add this lines to yours config/app.php
'providers' => [
//  ...
    TrayLabs\InfluxDB\Providers\ServiceProvider::class,
]
'aliases' => [
//  ...
    'InfluxDB' => TrayLabs\InfluxDB\Facades\InfluxDB::class,
]
  • Define env variables to connect to InfluxDB
INFLUXDB_HOST=localhost
INFLUXDB_PORT=8086
INFLUXDB_USER=some_user
INFLUXDB_PASSWORD=some_password
INFLUXDB_SSL=false
INFLUXDB_VERIFYSSL=false
INFLUXDB_TIMEOUT=0
INFLUXDB_DBNAME=some_database
  • Write this into your terminal inside your project
php artisan vendor:publish

Reading Data

<?php

// executing a query will yield a resultset object
$result = InfluxDB::query('select * from test_metric LIMIT 5');

// get the points from the resultset yields an array
$points = $result->getPoints();

Writing Data

<?php

// create an array of points
$points = array(
    new InfluxDB\Point(
        'test_metric', // name of the measurement
        null, // the measurement value
        ['host' => 'server01', 'region' => 'us-west'], // optional tags
        ['cpucount' => 10], // optional additional fields
        time() // Time precision has to be set to seconds!
    ),
    new InfluxDB\Point(
        'test_metric', // name of the measurement
        null, // the measurement value
        ['host' => 'server01', 'region' => 'us-west'], // optional tags
        ['cpucount' => 10], // optional additional fields
        time() // Time precision has to be set to seconds!
    )
);

$result = InfluxDB::writePoints($points, \InfluxDB\Database::PRECISION_SECONDS);

License

This project is licensed under the MIT License