go-utils

module
v1.0.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 19, 2020 License: Apache-2.0

README

Overview

This is an utils package for multiple usages. It contains basic utility functions for strings, mysql, mongo, elastic-search, files etc.

Library

1.  MYSQL Package
package main

import (
	"github.com/zapr-oss/go-utils/mysql"
	"github.com/zapr-oss/go-utils/mysql/config"
)

func main() {
	mConfig := mysqlconfig.Config{
		Host: "127.0.0.1",
		User: "username",
		Password:"password",
		Database:"database",
		Port:3306,
		RetryCount: 4,
	}


	mysqlE, err := mysql.Connect(mConfig)
	if err != nil {
		// handle error
	}
	defer mysqlE.Close()

	rows, err := mysqlE.Query("Select * from apples")

	if err != nil {
	//	handle error
	}
    
	for rows.Next() {
	//	iter rows
	}
    //iterate through rows.
}
2. MONGO Package
package main

import (
	"github.com/zapr-oss/go-utils/mongo"
	"github.com/zapr-oss/go-utils/mongo/config"
	"log"
	"gopkg.in/mgo.v2/bson"
)

func main() {

	config := mongoconfig.Config{
        Host: "127.0.0.1",
        UserName: "username",
        Password:"password",
        Database:"database",
        Port:3306,
    }

	mongoE, err := mongo.Connect(config)
	if err != nil {
	    //Handle error
	}
	defer mongoE.Close()

	col := mongoE.DB.C("collection_name")

	columnCount, _ := col.Find(bson.M{}).Count()

	log.Println(columnCount)
}

3. GRAPHITE Package
package main

import (
    "github.com/zapr-oss/go-utils/graphite/graphiteutil"
    "github.com/zapr-oss/go-utils/graphite"
)

func main() {

    graphiteConfig := graphite.GraphiteConfig{
       Host: "127.0.0.1",
       Port:3306,
       Prefix: "metric_prefix",
       Environment: "prod",
       FlushIntervalInSec: 1, // interval to send metrics to graphite server.
       Disabled: false,
   }

    err := graphiteutil.InitializeGraphite(graphiteConfig)

    if err != nil {
    //	Handle error
    }

    graphite.GetCounter("counter_name").Inc()
}

4. ElasticSearch Package
package main

import (
	"github.com/zapr-oss/go-utils/elasticsearch/config"
    "github.com/zapr-oss/go-utils/elasticsearch"
)
func main() {
	elasticConfig := elasticconfig.Config{Addresses: []string{"http://127.0.0.1:9200", "http://192.168.0.1:9200"}}
	client, err := elasticsearch.Connect(elasticConfig)
	
	if err != nil {
	// Handle error
	}
}

Except the above functionality there are some utils functions for multiple purposes as mentioned above.

Directories

Path Synopsis
Package graphite implements a graphite client with aggregation of metrics in a short period of time and sending the result to graphite.
Package graphite implements a graphite client with aggregation of metrics in a short period of time and sending the result to graphite.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL