influxdb-pusher is tool that push InfluxDB line protocol to InfluxDB.
It is released as :
- a Golang library
 - an executable binary
 
go get github.com/barasher/influxdb-pusher
package main
import (
	pusher "github.com/barasher/influxdb-pusher"
)
func main() {
	p, err := pusher.NewPusher("http://127.0.0.1:8086", "myDatabase")
	if err != nil {
		// deal with error
	}
	err = p.Push("/tmp/someData.txt")
	if err != nil {
        // deal with error
	}
}go build -o pusher cmd/pusher_cli.go
barasher@Linux:/tmp/$ ./pusher -h
Usage of Pusher:
  -c string
    	Consistency (any|all|one|quorum)
  -d string
    	Database, required
  -f string
    	File to push, required
  -p string
    	Password
  -pr string
    	Precision (ns|u|ms|s|m|h)
  -r string
    	Retention policy
  -t string
    	Timeout duration (50s, 120ms, 1m, ...)
  -u string
    	URL, required (sample: http://1.2.3.4:8086)
  -us string
    	Username
Parameters :
- -c specifies the consistency required for the push
 - -d specifies the database that has to be used
 - -f specifies the path containing the data
 - -p specifies the password to use
 - -pr specifies the precision ot consider for the data
 - -u specifies the URL of the InfluxDB API
 - -us specifies the username to use
 - -t specifies the timeout (
300ms: 300 milliseconds,2h30m: 2 hours and 30 minutes, ...) 
Return codes :
- 0: everything was OK
 - 1: configuration failure
 - 2: execution failure