feat: add miner event log tab

This commit is contained in:
2026-04-29 23:38:38 +02:00
parent 61e140fb03
commit f131f0bc71
9 changed files with 371 additions and 36 deletions
+16 -1
View File
@@ -136,7 +136,7 @@ func (r *runtime) startResolve(state *auth.State, ch chan<- StreamerUpdate) {
ch <- StreamerUpdate{Err: err, Done: true}
return
}
minerManager := miner.NewManager(r.ctx, service, nil)
minerManager := newMinerManager(r.ctx, service, ch)
defer minerManager.Close()
if err := resolveStreamerEntriesWithSleep(r.ctx, service, state, r.logins, ircManager, minerManager, func(update StreamerUpdate) {
@@ -208,6 +208,21 @@ func newIRCManager(ch chan<- StreamerUpdate) *irc.Manager {
}
}
func newMinerManager(ctx context.Context, service miner.Service, ch chan<- StreamerUpdate) *miner.Manager {
return miner.NewManager(ctx, service, nil, newMinerLogSink(ch))
}
func newMinerLogSink(ch chan<- StreamerUpdate) func(miner.LogEntry) {
return func(entry miner.LogEntry) {
ch <- StreamerUpdate{
Miner: &MinerUpdate{
Login: entry.Login,
Line: entry.Line,
},
}
}
}
func resolveStreamerEntries(ctx context.Context, service streamerService, state *auth.State, logins []string, ircSyncer ircSyncer, minerSyncer minerSyncer, send func(StreamerUpdate)) error {
return resolveStreamerEntriesWithSleep(ctx, service, state, logins, ircSyncer, minerSyncer, send, streamerRefreshInterval, sleepContext)
}