57 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			Go
		
	
	
	
			
		
		
	
	
			57 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			Go
		
	
	
	
| package main
 | |
| 
 | |
| import (
 | |
| 	"database/sql"
 | |
| 	"fmt"
 | |
| 	"log"
 | |
| 	"time"
 | |
| 
 | |
| 	"github.com/taosdata/driver-go/v3/common"
 | |
| 	_ "github.com/taosdata/driver-go/v3/taosWS"
 | |
| 	"github.com/taosdata/driver-go/v3/ws/schemaless"
 | |
| )
 | |
| 
 | |
| func main() {
 | |
| 	host := "127.0.0.1"
 | |
| 	lineDemo := "meters,groupid=2,location=California.SanFrancisco current=10.3000002f64,voltage=219i32,phase=0.31f64 1626006833639"
 | |
| 	telnetDemo := "metric_telnet 1707095283260 4 host=host0 interface=eth0"
 | |
| 	jsonDemo := "{\"metric\": \"metric_json\",\"timestamp\": 1626846400,\"value\": 10.3, \"tags\": {\"groupid\": 2, \"location\": \"California.SanFrancisco\", \"id\": \"d1001\"}}"
 | |
| 
 | |
| 	taosDSN := fmt.Sprintf("root:taosdata@ws(%s:6041)/", host)
 | |
| 	db, err := sql.Open("taosWS", taosDSN)
 | |
| 	if err != nil {
 | |
| 		log.Fatalln("Failed to connect to host: " + host + "; ErrMessage: " + err.Error())
 | |
| 	}
 | |
| 	defer db.Close()
 | |
| 	_, err = db.Exec("CREATE DATABASE IF NOT EXISTS power")
 | |
| 	if err != nil {
 | |
| 		log.Fatalln("Failed to create database power, ErrMessage: " + err.Error())
 | |
| 	}
 | |
| 	s, err := schemaless.NewSchemaless(schemaless.NewConfig("ws://localhost:6041", 1,
 | |
| 		schemaless.SetDb("power"),
 | |
| 		schemaless.SetReadTimeout(10*time.Second),
 | |
| 		schemaless.SetWriteTimeout(10*time.Second),
 | |
| 		schemaless.SetUser("root"),
 | |
| 		schemaless.SetPassword("taosdata"),
 | |
| 	))
 | |
| 	if err != nil {
 | |
| 		log.Fatalln("Failed to connect to host: " + host + "; ErrMessage: " + err.Error())
 | |
| 	}
 | |
| 	// insert influxdb line protocol
 | |
| 	err = s.Insert(lineDemo, schemaless.InfluxDBLineProtocol, "ms", 0, common.GetReqID())
 | |
| 	if err != nil {
 | |
| 		log.Fatalln("Failed to insert data with schemaless, data:" + lineDemo + ", ErrMessage: " + err.Error())
 | |
| 	}
 | |
| 	// insert opentsdb telnet line protocol
 | |
| 	err = s.Insert(telnetDemo, schemaless.OpenTSDBTelnetLineProtocol, "ms", 0, common.GetReqID())
 | |
| 	if err != nil {
 | |
| 		log.Fatalln("Failed to insert data with schemaless, data: " + telnetDemo + ", ErrMessage: " + err.Error())
 | |
| 	}
 | |
| 	// insert opentsdb json format protocol
 | |
| 	err = s.Insert(jsonDemo, schemaless.OpenTSDBJsonFormatProtocol, "s", 0, common.GetReqID())
 | |
| 	if err != nil {
 | |
| 		log.Fatalln("Failed to insert data with schemaless, data: " + jsonDemo + ", ErrMessage: " + err.Error())
 | |
| 	}
 | |
| 	fmt.Println("Inserted data with schemaless successfully.")
 | |
| }
 |