GoLogger

package module
v0.0.0-...-738454c Latest Latest
Warning

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

Go to latest
Published: Jul 15, 2022 License: BSD-2-Clause Imports: 8 Imported by: 0

README

GoLoggerService

Go Local Logger and Net over TCP

before to use: get this lib
Example:
Client:
package main
import (
  "github.com/ExoNarcis/GoLoggerService"
)

type NetPackage struct {
	Name   string
	Body   NetPackageBody
	Sender string
	Time   int64
}

type NetPackageBody struct {
	Command  string
	PackBody string
}

var Logger = GoLogger.LoggerServiceClient{LocalLogPath: "log.txt",
	NetLogNeed:       true, // if you need net log
	NetServerIP:      "127.0.0.1", // net ip
	NetServerPort:    "1338", // target port 
	LocalChannelSize: 10, 
	NetChannelSize:   10,
	CritMassage:      "CRIT!"}
  
func PackFun(pack string) ([]byte, error) {
  unJsonPack := NetPackage{Name: "NetLog",
		Body:   NetPackageBody{Command: "GoTCPMain NetLog Write", PackBody: "GoTCPMain:" + pack},
		Sender: "GoTCPMain",
		Time:   time.Now().Unix()}

  jpack, errJ := json.Marshal(unJsonPack)
	if errJ != nil {
		return []byte(""), errJ
	}
	return jpack, nil
}
  
func main() {
  Logger.PackFunction = PackFun
  Logger.Init()
  defer Logger.Wait()
  go Logger.WriteLogs(" NET + LOCAL")
  go Logger.WriteLocalLogs("ONLY LOCAL")
}
Server:
package main

import (
	"github.com/ExoNarcis/GoLoggerService"
	"encoding/json"
)

type NetPackage struct {
	Name   string
	Body   NetPackageBody
	Sender string
	Time   int64
}

type NetPackageBody struct {
	Command  string
	PackBody string
}

var NetLogServer = GoLogger.LoggerServiceServer{LocalLogPath: "log.txt", // local log path
	NetLogPath:        "GeneRalNetLog.txt", // Net Log Path
	NetServerProtocol: "tcp", // type (Net.Conn)
	NetServerPort:     ":1338", // port 
	LocalChannelSize:  10, 
	NetChannelSize:    10,
	CritMassage:       "CRIT!"}

func main() {
	NetLogServer.UnPackFunction = UnPackFunc
	NetLogServer.Init()
	defer NetLogServer.Wait()
}

func UnPackFunc(mess string) (string, error) {
	UnJPack := NetPackage{}
	errUnJ := json.Unmarshal([]byte(mess), &UnJPack)
	if errUnJ != nil {
		return "", errUnJ
	}
	return UnJPack.Body.PackBody, nil
}

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type LoggerServiceClient

type LoggerServiceClient struct {
	LocalLogPath     string
	NetLogNeed       bool
	NetServerIP      string
	NetServerPort    string
	LocalChannelSize int
	NetChannelSize   int
	CritMassage      string
	PackFunction     _PackFunction
	// contains filtered or unexported fields
}

func (*LoggerServiceClient) CloseLocalLog

func (log *LoggerServiceClient) CloseLocalLog()

func (*LoggerServiceClient) Disconnect

func (log *LoggerServiceClient) Disconnect()

func (*LoggerServiceClient) Exit

func (log *LoggerServiceClient) Exit()

func (*LoggerServiceClient) Init

func (log *LoggerServiceClient) Init()

func (*LoggerServiceClient) PrintAndWrite

func (log *LoggerServiceClient) PrintAndWrite(Message string)

func (*LoggerServiceClient) PrintAndWriteLocal

func (log *LoggerServiceClient) PrintAndWriteLocal(Message string)

func (*LoggerServiceClient) Wait

func (log *LoggerServiceClient) Wait()

func (*LoggerServiceClient) WriteLocalLogs

func (log *LoggerServiceClient) WriteLocalLogs(Message string)

func (*LoggerServiceClient) WriteLogs

func (log *LoggerServiceClient) WriteLogs(Message string)

type LoggerServiceServer

type LoggerServiceServer struct {
	LocalLogPath      string
	NetLogPath        string
	NetServerProtocol string
	NetServerPort     string
	LocalChannelSize  int
	NetChannelSize    int
	CritMassage       string
	UnPackFunction    _UnPackFunction
	// contains filtered or unexported fields
}

func (*LoggerServiceServer) Init

func (log *LoggerServiceServer) Init()

func (*LoggerServiceServer) NetLogWrite

func (log *LoggerServiceServer) NetLogWrite(mess string)

func (*LoggerServiceServer) Wait

func (log *LoggerServiceServer) Wait()

func (*LoggerServiceServer) WriteLocalLogs

func (log *LoggerServiceServer) WriteLocalLogs(Message string)

Jump to

Keyboard shortcuts

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