mirror of
https://github.com/eosswedenorg/antelope-api-healthcheck
synced 2026-06-20 09:56:49 +02:00
src/server.go: Add backward support for the old request format.
This commit is contained in:
parent
1912ef1790
commit
32619b293f
1 changed files with 54 additions and 13 deletions
|
|
@ -4,6 +4,7 @@ import (
|
|||
"fmt"
|
||||
"strings"
|
||||
"strconv"
|
||||
"github.com/eosswedenorg/eosio-api-healthcheck/src/utils"
|
||||
"github.com/eosswedenorg/eosio-api-healthcheck/src/api"
|
||||
"github.com/eosswedenorg-go/eosapi"
|
||||
"github.com/eosswedenorg-go/haproxy/agentcheck"
|
||||
|
|
@ -60,23 +61,63 @@ func onTcpMessage(c *tcp_server.Client, args string) {
|
|||
return
|
||||
}
|
||||
|
||||
// 1. Api
|
||||
a.api = split[0]
|
||||
// Old format: <url> <version> <api> <block_time>
|
||||
if utils.IsUrl(split[0]) {
|
||||
|
||||
// 2. url (scheme + ip/domain + port)
|
||||
a.url = split[1]
|
||||
logger.Warn("Deprecated format. Please change to the new format: <api>|<url>[|<block_time>|<host>]")
|
||||
|
||||
// 3. Block time.
|
||||
if len(split) > 2 {
|
||||
num, err := strconv.ParseInt(split[2], 10, 32)
|
||||
if err == nil {
|
||||
a.block_time = int(num)
|
||||
// 1. url (scheme + ip/domain + port)
|
||||
a.url = split[0]
|
||||
|
||||
// 2. api
|
||||
if len(split) > 1 {
|
||||
a.api = split[1]
|
||||
}
|
||||
}
|
||||
|
||||
// 4. Host
|
||||
if len(split) > 3 {
|
||||
a.host = split[3]
|
||||
// 3. Block time
|
||||
if len(split) > 2 {
|
||||
num, err := strconv.ParseInt(split[2], 10, 32)
|
||||
if err == nil {
|
||||
a.block_time = int(num)
|
||||
}
|
||||
}
|
||||
|
||||
// 4. Host
|
||||
if len(split) > 3 {
|
||||
a.host = split[3]
|
||||
}
|
||||
|
||||
} else {
|
||||
|
||||
if len(split) < 2 {
|
||||
msg := "Invalid number of parameters in agent request"
|
||||
|
||||
logger.Warn("Agent request error", "message", msg, "args", split)
|
||||
resp := agentcheck.NewStatusMessageResponse(agentcheck.Failed, msg)
|
||||
|
||||
c.WriteString(resp.String())
|
||||
c.Close()
|
||||
return
|
||||
}
|
||||
|
||||
// 1. Api
|
||||
a.api = split[0]
|
||||
|
||||
// 2. url (scheme + ip/domain + port)
|
||||
a.url = split[1]
|
||||
|
||||
// 3. Block time.
|
||||
if len(split) > 2 {
|
||||
num, err := strconv.ParseInt(split[2], 10, 32)
|
||||
if err == nil {
|
||||
a.block_time = int(num)
|
||||
}
|
||||
}
|
||||
|
||||
// 4. Host
|
||||
if len(split) > 3 {
|
||||
a.host = split[3]
|
||||
}
|
||||
}
|
||||
|
||||
// Check api.
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue