feat: implement new generic parser and improve production readyness
This commit is contained in:
parent
8364218234
commit
0830b403e0
34 changed files with 1715 additions and 2114 deletions
|
|
@ -6,18 +6,19 @@ import (
|
|||
"log/slog"
|
||||
"regexp"
|
||||
"strings"
|
||||
"tixel_watch/models"
|
||||
"tixel_watch/parser"
|
||||
"watch-tool/models"
|
||||
"watch-tool/parser"
|
||||
|
||||
"github.com/hpcloud/tail"
|
||||
)
|
||||
|
||||
type FileMonitor struct {
|
||||
config ToolConfig
|
||||
parser parser.Parser
|
||||
config ToolConfig
|
||||
parser parser.Parser
|
||||
hostname string
|
||||
}
|
||||
|
||||
func NewFileMonitor(config ToolConfig) *FileMonitor {
|
||||
func NewFileMonitor(config ToolConfig, hostname string) *FileMonitor {
|
||||
var logParser parser.Parser
|
||||
|
||||
if config.Format.Pattern != "" {
|
||||
|
|
@ -34,15 +35,16 @@ func NewFileMonitor(config ToolConfig) *FileMonitor {
|
|||
}
|
||||
} else {
|
||||
var err error
|
||||
logParser, err = parser.New(config.Name, "custom")
|
||||
logParser, err = parser.New(config.Name, "custom", hostname)
|
||||
if err != nil {
|
||||
slog.Error("cannot get tool specific parser", "error", err)
|
||||
}
|
||||
}
|
||||
|
||||
return &FileMonitor{
|
||||
config: config,
|
||||
parser: logParser,
|
||||
config: config,
|
||||
parser: logParser,
|
||||
hostname: hostname,
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue