for d := range msgs {
log.Printf(" [*] Waiting for messages. To exit press CTRL+C")
path, err = filepath.Abs(string(d.Body))
utils.Assert(err)
if _, err = os.Stat(path); os.IsNotExist(err) {
failOnError(err, "%s file doesn't exitst", d)
}
fmt.Println("Подошли к проверке")
avast := AvScan(path, 60)
fmt.Println("Прошел проверку")
avastJSON, err := json.Marshal(avast)
utils.Assert(err)
fmt.Println(string(avastJSON))
db, err := sql.Open("mysql", "****")
if err != nil {
panic(err.Error()) // Just for example purpose. You should use proper error handling instead of panic
}
defer db.Close()
sqlStatement := `INSERT INTO ResultTable (Module, Result, FileID) VALUES (?, ?, ?)`
_, err = db.Exec(sqlStatement, "Comodo", avastJSON, "10")
if err != nil {
panic(err.Error()) // proper error handling instead of panic in your app
}
}
}()
<-forever
}
Данный скрипт принимает сообщения из очереди, не могу понять почему он виснет после приема первого сообщения...
в какой строке виснет?
а чего он не умеет нормально завершаться? типа того чтобы слушать сигнал и его обработать.
Обсуждают сегодня