-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmain.go
39 lines (32 loc) · 1015 Bytes
/
main.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
package main
import (
"fmt"
"os"
"github.com/wdoogz/log_ripper/parser"
"github.com/wdoogz/log_ripper/poster"
)
func main() {
var numberOfErrors int
if len(os.Args) != 6 {
fmt.Println("\n\nUsage: \n>> log_ripper <path to logs> <hostname/url and port> <database name> <database username> <database password>")
fmt.Println("\nExample: \n>> log_ripper /var/log/messages 192.168.1.10:8086 mydb myuser mypass")
}
pathToLogs := os.Args[1]
databaseHost := os.Args[2]
databaseName := os.Args[3]
databaseUser := os.Args[4]
databasePass := os.Args[5]
testPath, err := os.Stat(pathToLogs)
if err != nil {
fmt.Println(err)
}
if testPath.IsDir() {
numberOfErrors = parser.ParseLogDir(pathToLogs)
fmt.Println(numberOfErrors)
poster.Poster(databaseHost, databaseName, databaseUser, databasePass, numberOfErrors)
} else {
numberOfErrors = parser.ParseLogFile(pathToLogs)
fmt.Println(numberOfErrors)
poster.Poster(databaseHost, databaseName, databaseUser, databasePass, numberOfErrors)
}
}