Refactor tutorial 2
This commit is contained in:
parent
fc0dc7f6e4
commit
b87d0c966b
@ -4,22 +4,23 @@ import (
|
||||
"github.com/streadway/amqp"
|
||||
"log"
|
||||
"os"
|
||||
"fmt"
|
||||
)
|
||||
|
||||
func failOnError(err error, msg string) {
|
||||
if err != nil {
|
||||
log.Fatalf("%s: %s", msg, err)
|
||||
panic(fmt.Sprintf("%s: %s", msg, err))
|
||||
}
|
||||
}
|
||||
|
||||
func main() {
|
||||
conn, err := amqp.Dial("amqp://guest:guest@localhost:5672/")
|
||||
if err != nil {
|
||||
log.Fatalf("Dial: %s", err)
|
||||
return
|
||||
}
|
||||
failOnError(err, "Failed to connect to RabbitMQ")
|
||||
defer conn.Close()
|
||||
|
||||
ch, err := conn.Channel()
|
||||
if err != nil {
|
||||
log.Fatalf("Channel: %s", err)
|
||||
return
|
||||
}
|
||||
|
||||
failOnError(err, "Failed to open a channel")
|
||||
defer ch.Close()
|
||||
|
||||
err = ch.ExchangeDeclare(
|
||||
@ -31,18 +32,9 @@ func main() {
|
||||
false, // noWait
|
||||
nil, // arguments
|
||||
)
|
||||
if err != nil {
|
||||
log.Fatalf("Exchange Declare: %s", err)
|
||||
return
|
||||
}
|
||||
failOnError(err, "Failed to declare an exchange")
|
||||
|
||||
var body string
|
||||
if os.Args[1] == "" {
|
||||
body = "hello"
|
||||
} else {
|
||||
body = os.Args[1]
|
||||
|
||||
}
|
||||
body := bodyFrom(os.Args)
|
||||
err = ch.Publish(
|
||||
"logs", // exchange
|
||||
"", // routing key
|
||||
@ -53,11 +45,20 @@ func main() {
|
||||
Body: []byte(body),
|
||||
})
|
||||
|
||||
if err != nil {
|
||||
log.Fatalf("Exchange Publish: %s", err)
|
||||
return
|
||||
}
|
||||
failOnError(err, "Failed to publish a message")
|
||||
log.Printf(" [x] Sent %s", body)
|
||||
|
||||
os.Exit(0)
|
||||
}
|
||||
|
||||
func bodyFrom(args []string) string {
|
||||
var body string
|
||||
if (len(args) < 1) || os.Args[1] == "" {
|
||||
body = "hello"
|
||||
} else {
|
||||
body = os.Args[1]
|
||||
|
||||
}
|
||||
|
||||
return body
|
||||
}
|
@ -4,22 +4,23 @@ import (
|
||||
"github.com/streadway/amqp"
|
||||
"log"
|
||||
"os"
|
||||
"fmt"
|
||||
)
|
||||
|
||||
func failOnError(err error, msg string) {
|
||||
if err != nil {
|
||||
log.Fatalf("%s: %s", msg, err)
|
||||
panic(fmt.Sprintf("%s: %s", msg, err))
|
||||
}
|
||||
}
|
||||
|
||||
func main() {
|
||||
conn, err := amqp.Dial("amqp://guest:guest@localhost:5672/")
|
||||
if err != nil {
|
||||
log.Fatalf("Dial: %s", err)
|
||||
return
|
||||
}
|
||||
failOnError(err, "Failed to connect to RabbitMQ")
|
||||
defer conn.Close()
|
||||
|
||||
ch, err := conn.Channel()
|
||||
if err != nil {
|
||||
log.Fatalf("Channel: %s", err)
|
||||
return
|
||||
}
|
||||
|
||||
failOnError(err, "Failed to open a channel")
|
||||
defer ch.Close()
|
||||
|
||||
q, err := ch.QueueDeclare(
|
||||
@ -30,20 +31,14 @@ func main() {
|
||||
false, // noWait
|
||||
nil, // arguments
|
||||
)
|
||||
if err != nil {
|
||||
log.Fatalf("Queue Declare: %s", err)
|
||||
return
|
||||
}
|
||||
failOnError(err, "Failed to declare a queue")
|
||||
err = ch.QueueBind(
|
||||
q.Name, // queue name
|
||||
"", // routing key
|
||||
"logs", // exchange
|
||||
false,
|
||||
nil)
|
||||
if err != nil {
|
||||
log.Fatalf("Queue Bind: %s", err)
|
||||
return
|
||||
}
|
||||
failOnError(err, "Failed to bind a queue")
|
||||
|
||||
msgs, err := ch.Consume(q.Name, "", true, false, false, false, nil)
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user