profile

package module
v0.0.0-...-20fdc3a Latest Latest
Warning

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

Go to latest
Published: Jun 3, 2018 License: Apache-2.0 Imports: 5 Imported by: 0

README

Golang profile service

Build Status
This projects wants to supports other projects with profiles, to use the same code on different environsments just be setting a PROFILE environment varibale. Inspired by java spring profiles. This makes it easier to set up the service without define several environment variables on every system.

cd $GOPATH/src/myapp/
go build
./myapp
  time="2017-09-25T13:13:17+02:00" level=info msg="ProfileService: env variable PROFILE not set - application started with default profile" 


export PROFILE=dev
./myapp
  time="2017-09-25T13:13:17+02:00" level=info msg="ProfileService: started with profile" profile=dev 

Different profiles

The application profile files needs to be named like application-<PROFILE-NAME>.yml. The default profile file application.yml will be used if the environment variable is not set.

Example profile file

profile:
    name: development
application:
	port: 8081
    context: /context
    name: default-application

Usage

Checkout this project with

go get github.com/lvornholt/go-profiles

Example

import (
    ...
	profile "github.com/lvornholt/go-profiles"
}

var name string

func init() {

	configName := profile.GetConfigValue("application.name")
	if len(configName) > 0 {
		name = configName
	}
}

func main() {
    ...

Documentation

Index

Constants

This section is empty.

Variables

View Source
var Logger = log.New()

Logger instances

Functions

func ClearData

func ClearData()

ClearData to reinitilize profile

func GetArrayValues

func GetArrayValues(path string) []interface{}

GetArrayValues search for array at given path and return empty array if no values found

func GetBooleanValue

func GetBooleanValue(path string) bool

GetBooleanValue searc for boolean value at given path and return false if no value found

func GetFloatValue

func GetFloatValue(path string) float64

GetFloatValue - search for float value at given path and return 0.0 if no value found

func GetIntValue

func GetIntValue(path string) int

GetIntValue - search for integer value at given path and return 0 if no value found

func GetStringValue

func GetStringValue(path string) string

GetStringValue - search for string value at given path and return empty string if no value found

func GetValueWithDefault

func GetValueWithDefault(path string, defaultValue interface{}) interface{}

GetValueWithDefault - search for string at given path and return given default value if no or emtpy value found

func SetLogLevel

func SetLogLevel(level string)

SetLogLevel - allowed values "debug", "info", "warn", "error"

Types

This section is empty.

Jump to

Keyboard shortcuts

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