Update logging
Change-Id: I13279582aa717edad5d56323866b941db1919404
diff --git a/server/agent/example.go b/server/agent/example.go
index 1233bdc..a7faea9 100644
--- a/server/agent/example.go
+++ b/server/agent/example.go
@@ -2,7 +2,8 @@
import (
"context"
- "log"
+ "log/slog"
+ "os"
"time"
"github.com/iomodo/staff/git"
@@ -13,11 +14,14 @@
// ExampleAgent demonstrates how to create and run an agent
func ExampleAgent() {
+ // Create logger
+ logger := slog.New(slog.NewTextHandler(os.Stdout, &slog.HandlerOptions{Level: slog.LevelInfo}))
+
// Create git interface for task management
gitInterface := git.DefaultGit("./tasks-repo")
// Create task manager
- taskManager := git_tm.NewGitTaskManager(gitInterface, "./tasks-repo")
+ taskManager := git_tm.NewGitTaskManagerWithLogger(gitInterface, "./tasks-repo", logger)
// Create LLM configuration
llmConfig := llm.Config{
@@ -57,9 +61,10 @@
}
// Create agent
- agent, err := NewAgent(config)
+ agent, err := NewAgent(config, logger)
if err != nil {
- log.Fatalf("Failed to create agent: %v", err)
+ logger.Error("Failed to create agent", slog.String("error", err.Error()))
+ os.Exit(1)
}
// Create a sample task
@@ -71,15 +76,16 @@
Priority: tm.PriorityHigh,
})
if err != nil {
- log.Fatalf("Failed to create task: %v", err)
+ logger.Error("Failed to create task", slog.String("error", err.Error()))
+ os.Exit(1)
}
- log.Printf("Created task: %s", task.ID)
+ logger.Info("Created task", slog.String("id", task.ID))
// Run the agent (this will process tasks in an infinite loop)
go func() {
if err := agent.Run(); err != nil {
- log.Printf("Agent stopped with error: %v", err)
+ logger.Error("Agent stopped with error", slog.String("error", err.Error()))
}
}()
@@ -92,9 +98,12 @@
// ExampleMultipleAgents demonstrates how to create multiple agents with different roles
func ExampleMultipleAgents() {
+ // Create logger
+ logger := slog.New(slog.NewTextHandler(os.Stdout, &slog.HandlerOptions{Level: slog.LevelInfo}))
+
// Create shared git interface for task management
gitInterface := git.DefaultGit("./tasks-repo")
- taskManager := git_tm.NewGitTaskManager(gitInterface, "./tasks-repo")
+ taskManager := git_tm.NewGitTaskManagerWithLogger(gitInterface, "./tasks-repo", logger)
// Create agents with different roles
agents := []AgentConfig{
@@ -177,16 +186,16 @@
// Create and start all agents
for _, config := range agents {
- agent, err := NewAgent(config)
+ agent, err := NewAgent(config, logger)
if err != nil {
- log.Printf("Failed to create agent %s: %v", config.Name, err)
+ logger.Error("Failed to create agent", slog.String("name", config.Name), slog.String("error", err.Error()))
continue
}
go func(agent *Agent, name string) {
- log.Printf("Starting agent: %s", name)
+ logger.Info("Starting agent", slog.String("name", name))
if err := agent.Run(); err != nil {
- log.Printf("Agent %s stopped with error: %v", name, err)
+ logger.Error("Agent stopped with error", slog.String("name", name), slog.String("error", err.Error()))
}
}(agent, config.Name)
}