added logging

This commit is contained in:
2025-02-26 11:47:20 -06:00
parent fdaacace66
commit 5e33780cd3
3 changed files with 26 additions and 14 deletions
+14 -2
View File
@@ -5,6 +5,8 @@ import (
"embed" "embed"
"flag" "flag"
"fmt" "fmt"
"log"
"log/slog"
"os" "os"
_ "github.com/mattn/go-sqlite3" _ "github.com/mattn/go-sqlite3"
@@ -18,6 +20,7 @@ import (
var migrations embed.FS var migrations embed.FS
var host = flag.String("host", "127.0.0.1:8000", "Set the web server host address.") var host = flag.String("host", "127.0.0.1:8000", "Set the web server host address.")
var debug = flag.Bool("debug", false, "Enable debug mode.")
const POSITIONAL_ARGS_HELP = ` const POSITIONAL_ARGS_HELP = `
Valid commands: Valid commands:
@@ -33,12 +36,21 @@ func main() {
os.Exit(1) os.Exit(1)
} }
f, err := os.OpenFile("mmaschedule.log", os.O_RDWR|os.O_CREATE|os.O_APPEND, 0666)
if err != nil {
fmt.Println("Error opening file:", err)
os.Exit(1)
}
defer f.Close()
log.SetOutput(f)
cmd := flag.Args()[0] cmd := flag.Args()[0]
client := NewScraperClient() client := NewScraperClient()
queries, err := InitDb("db.sqlite") queries, err := InitDb("db.sqlite")
if err != nil { if err != nil {
fmt.Println("Error initializing database:", err) slog.Error("Error initializing database", "error", err)
return return
} }
@@ -47,7 +59,7 @@ func main() {
go ScrapeEventsLoop(queries, client, true) go ScrapeEventsLoop(queries, client, true)
err = RunServer(*host, queries) err = RunServer(*host, queries)
if err != nil { if err != nil {
fmt.Println("Error starting web server:", err) slog.Error("Error starting web server:", "error", err)
} }
case "scrape": case "scrape":
ScrapeEvents(queries, client, true) ScrapeEvents(queries, client, true)
+9 -9
View File
@@ -2,7 +2,7 @@ package main
import ( import (
"context" "context"
"fmt" "log/slog"
"mmaschedule-go/event" "mmaschedule-go/event"
"time" "time"
) )
@@ -24,7 +24,7 @@ func ScrapeEvents(q *event.Queries, client ClientScraper, tapology bool) {
for _, scraper := range scrapers { for _, scraper := range scrapers {
e, err := scraper(client) e, err := scraper(client)
if err != nil { if err != nil {
fmt.Println("Error scraping events:", err) slog.Error("Error scraping events", "error", err)
} else { } else {
events = append(events, *e...) events = append(events, *e...)
} }
@@ -37,7 +37,7 @@ func ScrapeEvents(q *event.Queries, client ClientScraper, tapology bool) {
if len(events) > 0 { if len(events) > 0 {
err := q.UpsertEvents(context.Background(), events) err := q.UpsertEvents(context.Background(), events)
if err != nil { if err != nil {
fmt.Println("Error updating events in database:", err) slog.Error("Error updating events in database:", "error", err)
} }
} }
} }
@@ -45,7 +45,7 @@ func ScrapeEvents(q *event.Queries, client ClientScraper, tapology bool) {
func UpdateTapology(q *event.Queries, client ClientScraper, events *[]*event.Event) { func UpdateTapology(q *event.Queries, client ClientScraper, events *[]*event.Event) {
err := SetTapologyCSRF(client) err := SetTapologyCSRF(client)
if err != nil { if err != nil {
fmt.Println("Error settings tapology CSRF:", err) slog.Error("Error settings tapology CSRF:", "error", err)
} }
for _, e := range *events { for _, e := range *events {
@@ -56,21 +56,21 @@ func UpdateTapology(q *event.Queries, client ClientScraper, events *[]*event.Eve
f.FighterB, f.FighterB,
} }
for _, ff := range fighters { for _, ff := range fighters {
fmt.Println("Getting tapology link for", ff.Name) slog.Debug("Getting tapology link", "name", ff.Name)
tapology, err := q.GetTapology(context.Background(), ff.Name) tapology, err := q.GetTapology(context.Background(), ff.Name)
if err != nil { if err != nil {
fmt.Println("Error getting tapology from database:", err) slog.Error("Error getting tapology from database", "error", err)
link, err := GetTapologyLink(client, ff.Name) link, err := GetTapologyLink(client, ff.Name)
if err != nil { if err != nil {
fmt.Println("Error getting tapology from site:", err) slog.Error("Error getting tapology from site", "error", err)
} else if len(link) > 0 { } else if len(link) > 0 {
err := q.CreateTapology(context.Background(), event.CreateTapologyParams{Name: ff.Name, Url: link}) err := q.CreateTapology(context.Background(), event.CreateTapologyParams{Name: ff.Name, Url: link})
if err != nil { if err != nil {
fmt.Println("Error creating tapology in database:", err) slog.Error("Error creating tapology in database", "error", err)
} }
ff.Link = link ff.Link = link
} }
time.Sleep(time.Duration(5) * time.Second) time.Sleep(time.Duration(5) * time.Second)
} else { } else {
ff.Link = tapology.Url ff.Link = tapology.Url
} }
+3 -3
View File
@@ -3,7 +3,7 @@ package main
import ( import (
"encoding/json" "encoding/json"
"fmt" "fmt"
"log" "log/slog"
"net/http" "net/http"
"net/url" "net/url"
"regexp" "regexp"
@@ -56,7 +56,7 @@ func ScrapeONE(client ClientScraper) (*[]*event.Event, error) {
err := ScrapeONEEvent(client, &e) err := ScrapeONEEvent(client, &e)
if err != nil { if err != nil {
log.Println(err) slog.Error("Error scraping ONE event", "error", err)
return return
} }
@@ -159,7 +159,7 @@ func ScrapeUFC(client ClientScraper) (*[]*event.Event, error) {
} }
err := ScrapeUFCEvent(client, &e) err := ScrapeUFCEvent(client, &e)
if err != nil { if err != nil {
log.Println(err) slog.Error("Error scraping UFC event", "error", err)
} else if e.Fights != "null" { } else if e.Fights != "null" {
events = append(events, &e) events = append(events, &e)
} }