system

package
v1.0.11 Latest Latest
Warning

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

Go to latest
Published: Oct 9, 2023 License: MIT Imports: 15 Imported by: 1

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	/*EXT : extensiones de archivos */
	EXT = map[string]string{
		"JSON": ".json",
		"INI":  ".ini",
		"XML":  ".xml",
		"RUT":  ".rut",
		"SQL":  ".sql",
		"DB":   ".db",
		"CSV":  ".csv",
		"TXT":  ".txt",
		"DBX":  ".dbx",
	}
)

Functions

func CpDir

func CpDir(PathOrig, PathDest string) error

CpDir : copia una carpeta entera a una carpeta destino

func CpFile

func CpFile(PathOrig, PathDest string) error

CpFile : copia un archivo Origen a un directorio destino

func DirNew

func DirNew(Path string) error

DirNew : Crea una carpeta vacia en el sistema

func ExecuteBashLinux added in v1.0.4

func ExecuteBashLinux(command string) (string, string, error)

ExecuteBashLinux : ejecuta un comando en el bash de linux devolviendo primero salida de la ejecucion salida si da error al ejecucion error nativo de golang

func ExecutePrintLinux added in v1.0.4

func ExecutePrintLinux(command string)

func FileExist

func FileExist(Path string, inddir bool) bool

FileExist : Valida si el archivo del path existe antes de procesarlo. Valida tambien si existe un directorio con el inddir en true

func FileExt

func FileExt(Path string, ext string) bool

FileExt : Valida las extenciones de archivos.

func FileNew

func FileNew(p string) (*os.File, error)

FileNew : crea un archivo X

func FileRename

func FileRename(PathOrigen, PathNuevo string) error

FileRename : Renombra a un archivo como tambien lo puede mover a otro directorio de manera nativa.

func GetCPU

func GetCPU() int

GetCPU : envia la cantidad de CPU disponible en el procesador

func GetLocalIPV4

func GetLocalIPV4() string

GetLocalIPV4 : te envia la ip local que contiene la maquina que estas ejecutando el programa

func IsLinux

func IsLinux() bool

IsLinux : Valida si estas en un sistema operativo linux

func IsMac

func IsMac() bool

IsMac : Valida si estas en un sistema operativo Imac

func IsSO

func IsSO(so string) bool

IsSO : valida en que sistema operativo estas lista: android, darwin, dragonfly, linux, freebsd, openbsd, solaris, netbsd, plan9, windows

func IsWindows

func IsWindows() bool

IsWindows : Valida si estas en un sistema operativo windows

func ListDir

func ListDir(src string) ([]fs.DirEntry, error)

ListDir : lista la infomacion que contiene una carpeta

func MaxCPUtask

func MaxCPUtask() int

MaxCPUtask : maxima multi hilos que puede obtener

func MaxCPUtaskLimit

func MaxCPUtaskLimit(TASKCORE int) int

MaxCPUtaskLimit : maxima cantidad de core a usar con limitaciones TASKCORE es el limite

func MsjBlue

func MsjBlue(format string, arg ...interface{}) string

MsjBlue : Enviar un string de color celeste funciona para consolas basadas en linux

func MsjGreen

func MsjGreen(format string, arg ...interface{}) string

MsjGreen : Enviar un string de color verde para consolas basadas en linux

func MsjPc

func MsjPc(c Pc, format string, arg ...interface{}) string

MsjPc : envia un string de color personalizado de las constantes disponible en la libreria

func MsjRed

func MsjRed(format string, arg ...interface{}) string

MsjRed : Enviar un string de color rojo para consolas basadas en linux

func NumProcSet

func NumProcSet(n int) int

NumProcSet : setea los numeros de proceso validos

func Open

func Open(Path string) (*os.File, error)

Open : abre un archivo X

func PlecaAdd

func PlecaAdd(src string) string

PlecaAdd : coloca la pleca de un directorio "/"

func PrintGreen

func PrintGreen(format string, arg ...interface{})

PrintGreen : muestra un printf con color verde para consolas basadas en linux

func PrintPc

func PrintPc(c Pc, format string, arg ...interface{})

PrintPc : muestra un printf con color personalizado para consolas basadas en linux

func PrintRed

func PrintRed(format string, arg ...interface{})

PrintRed : muestra un printf con color rojo para consolas basadas en linux

func ReadFileStr

func ReadFileStr(path string) (string, error)

ReadFileStr : lee un archivo de texto y lo pasa a string

func RmDir

func RmDir(src string) error

RmDir : Elimina un directorio entero

func RmFile

func RmFile(file string) error

RmFile : elimina un archivo exacto

func TrimFile

func TrimFile(Path string) (string, error)

TrimFile : Renombra a una carpeta o archivo quitandole todos los espacio regresando el path del nuevo archivo.

func Write

func Write(Path string, data []byte) error

Write : escrive los datos en un archivo X

Types

type ConfigWorker

type ConfigWorker struct {
	Workers   FormatWorker `json:"workers"`
	ConfigDir StArchMa     `json:"files"`
	Pathlog   string       `json:"pathlog"`
	Debug     bool         `json:"debug"`
}

ConfigWorker : configuracion del worker maestro para integracion de demonio

type FormatWorker

type FormatWorker []struct {
	Tp  string `json:"type"`
	Key string `json:"key"`
	Fr  string `json:"format"`
}

FormatWorker : contiene los formatos de los worker para poder obtenerlos de forma de un json

type Job

type Job func(chan bool, chan error)

Job : alias para un proceso

type MasterWorker

type MasterWorker struct {
	Jobs map[string]Job
	// contains filtered or unexported fields
}

MasterWorker : contiene varios worker y se administran de forma individual con maps

func NewMasterWorker

func NewMasterWorker(Jobs map[string]Job, config string, indload bool) (MasterWorker, error)

NewMasterWorker : Crea un MasterWorker

func (*MasterWorker) Debug

func (p *MasterWorker) Debug(key, format string, args ...interface{}) error

Debug : ingresa un texto en modo debug

func (*MasterWorker) Err

func (p *MasterWorker) Err(key string) <-chan error

Err : envia el error en un canal de ejecucion

func (*MasterWorker) Error

func (p *MasterWorker) Error(key, format string, args ...interface{}) error

Debug : ingresa un texto en modo error

func (*MasterWorker) Finally

func (p *MasterWorker) Finally(key string)

Finally : Finalizacion del proceso donde el indicativo reset es para reintentar secuencia

func (*MasterWorker) FinallyDet

func (p *MasterWorker) FinallyDet(key, msg string, indreload, inderr bool) error

FinallyDet : Finalizacion del proceso donde el indicativo reset es para reintentar secuencia ademas guarda en los logs si termino bien o tuvo un error ademas tiene la opcion de reconfigurar el proceso para la proxima ejecucion

func (*MasterWorker) LoadConfig

func (p *MasterWorker) LoadConfig(PathJSON string) error

LoadConfig : carga el archivo de configuracion de los worker como archivo json

func (*MasterWorker) LoadWorkers

func (p *MasterWorker) LoadWorkers() (map[string]*Worker, error)

LoadWorkers : carga todos los worker y lo envie en un map

func (*MasterWorker) Loadmaster

func (p *MasterWorker) Loadmaster() error

Loadmaster : carga todas las configuraciones del master workers

func (*MasterWorker) Printf

func (p *MasterWorker) Printf(err bool, key, format string, args ...interface{}) error

Printf : Ingresa un texto en los logs asignados.

func (*MasterWorker) ReloadConfig

func (p *MasterWorker) ReloadConfig() error

ReloadConfig : recarga el archivo de configuracion por cualquier cambio de los workers

func (*MasterWorker) ReloadWork

func (p *MasterWorker) ReloadWork(key string) error

ReloadWork : recarga un workers para recargar todos sus parametros

func (*MasterWorker) SendWork

func (p *MasterWorker) SendWork(key string) (*Worker, error)

SendWork : Reconfigura un worker el tiempo de ejecucion

func (*MasterWorker) SetActivo

func (p *MasterWorker) SetActivo(key string, act bool)

SetActivo : modifica para que se desactive la tarea

func (*MasterWorker) StartDet

func (p *MasterWorker) StartDet(key, msg string)

StartGen : ejecuta una tarea en paralelo en forma general con un log de inicio de proceso

func (*MasterWorker) StartGen

func (p *MasterWorker) StartGen(key string)

StartGen : ejecuta una tarea en paralelo en forma general

func (*MasterWorker) Tick

func (p *MasterWorker) Tick(key string) <-chan time.Time

Tick : regresa el secuencial de tiempo

func (*MasterWorker) Valid

func (p *MasterWorker) Valid(key string) <-chan bool

Valid : envia si el proceso termino

func (*MasterWorker) ValidWork

func (p *MasterWorker) ValidWork(key string) bool

ValidWork : valida si existe un worker

type Pc

type Pc string

Pc : es un tipo para las paletas de colores.

const (
	ShellToUse = "bash"

	/*Green : verde */
	Green Pc = "g"
	/*Red : rojo */
	Red Pc = "r"
	/*Blue : azul */
	Blue Pc = "b"
	/*Cyan : celeste */
	Cyan Pc = "c"
	/*White : blanco */
	White Pc = "w"
	/*Black : negro */
	Black Pc = "bl"
	/*Yellow : amarillo*/
	Yellow Pc = "y"
	/*Magenta : magenta */
	Magenta Pc = "m"
	/*HBlack : negro fuerte */
	HBlack Pc = "hbl"
	/*HRed : rojo fuerte */
	HRed Pc = "hr"
	/*HGreen : verde fuerte */
	HGreen Pc = "hg"
	/*HYellow : amarrillo fuerte */
	HYellow Pc = "hy"
	/*HBlue : azul fuerte */
	HBlue Pc = "hb"
	/*HMagenta : magenta fuerte*/
	HMagenta Pc = "hm"
	/*HCyan : celeste fuerte */
	HCyan Pc = "hc"
	/*HWhite : blanco fuerte */
	HWhite Pc = "hw"
	/*FORMFE : Formato de fecha para los archivo YYYYMMDD*/
	FORMFE = "%d%02d%02d"
)

type StArch

type StArch struct {
	Path   string `json:"file"`
	IndDir bool   `json:"indir"`
}

StArch : estructura para registra los archivos y generarlos.

func (*StArch) Create

func (p *StArch) Create() error

Create : crear el archivo o directorio vacio si existe no lo crea

type StArchMa

type StArchMa []StArch

StArchMa : estructura maestra que crea directorios o archivos masivos.

func (*StArchMa) Create

func (p *StArchMa) Create() error

Create : crear el archivo o directorio vacio si existe no lo crea

type StLog

type StLog struct {
	//Directorio contenido
	Dir string
	//Nombre del log mas fecha
	Name string
	//Fecha
	Fe time.Time
	//Prefijo
	Prefix string
}

StLog : Estructura para crear log personalizados por medio de la fecha

directorio/fecha.log

func NewStLog

func NewStLog(dir, name, prefix string, fe time.Time) (StLog, error)

NewStLog : Crea una nueva intancia de StLog

func (*StLog) Init

func (p *StLog) Init() error

Init : Inicializa el log para comenzarlo a usar

func (*StLog) Printf

func (p *StLog) Printf(format string, args ...interface{}) error

Printf : Ingresa un texto en los logs asignado.

func (*StLog) Reload added in v1.0.10

func (p *StLog) Reload(date time.Time) error

ReloadNow : Recarga el log actual para que se pueda usar

func (*StLog) ReloadNow added in v1.0.10

func (p *StLog) ReloadNow() error

ReloadNow : Recarga el log actual para que se pueda usar

func (*StLog) ValidF

func (p *StLog) ValidF()

ValidF : valida la fecha del log cargado

type StLogMa added in v1.0.10

type StLogMa struct {
	War  *StLog
	Err  *StLog
	Info *StLog
}

StLogMa : Estructura para crear logs de errores y warnings e info

func NewStLogMa added in v1.0.10

func NewStLogMa(dir, name string, fe time.Time) (StLogMa, error)

NewStLogMa : Crea una nueva intancia de StLogMa

func (*StLogMa) Init added in v1.0.10

func (p *StLogMa) Init() error

Init : Inicializa el log para comenzarlo a usar

func (*StLogMa) Reload added in v1.0.10

func (p *StLogMa) Reload(date time.Time) error

ReloadNow : Recarga el log actual para que se pueda usar

func (*StLogMa) ReloadNow added in v1.0.10

func (p *StLogMa) ReloadNow() error

ReloadNow : Recarga el log actual para que se pueda usar

type Worker

type Worker struct {
	// contains filtered or unexported fields
}

Worker : Orquestador de procesos paralelo

func NewWork

func NewWork(format, tp string, job Job) (Worker, error)

NewWork : crea una tarea con formatos y tipo de de secuencia 1 - Ticker 2 - Time Formatos: 05 hr 54 min 12:16 time

func NewWorkTicker

func NewWorkTicker(p *time.Ticker, job Job) Worker

NewWorkTicker : crea una tarea mediante un ticker para ponerlo en un servicio

func NewWorkTime

func NewWorkTime(hr, min int, job Job) (Worker, error)

NewWorkTime : crea una tarea mediante una hora exacta para ponerlo en un servicio

func (*Worker) Err

func (p *Worker) Err() <-chan error

Err : envia el error en un canal de ejecucion

func (*Worker) Finally

func (p *Worker) Finally()

Finally : Finalizacion del proceso donde el indicativo reset es para reintentar secuencia

func (*Worker) GetStart

func (p *Worker) GetStart() bool

GetStart : Envia si el proceso esta en ejecucion

func (*Worker) SetActivo

func (p *Worker) SetActivo(act bool)

SetActivo : modifica para que se desactive la tarea

func (*Worker) Start

func (p *Worker) Start()

Start : Ejecuta el proceso paralelo

func (*Worker) StartGen

func (p *Worker) StartGen()

StartGen : ejecuta una tarea en paralelo en forma general

func (*Worker) StartTime

func (p *Worker) StartTime()

StartTime : ejecuta un proceso paralelo mediante una hora especifica

func (*Worker) Tick

func (p *Worker) Tick() <-chan time.Time

Tick : regresa el secuencial de tiempo

func (*Worker) Valid

func (p *Worker) Valid() <-chan bool

Valid : envia si el proceso termino

Jump to

Keyboard shortcuts

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