app/vmselect: show query origin (aka remote_addr or client address) on the /api/v1/status/active_queries page for every query

This commit is contained in:
Aliaksandr Valialkin 2020-07-28 15:12:48 +03:00
parent ec6ed467c6
commit 0f6f0d30d3
3 changed files with 16 additions and 11 deletions

View file

@ -774,6 +774,7 @@ func QueryHandler(startTime time.Time, at *auth.Token, w http.ResponseWriter, r
Start: start,
End: start,
Step: step,
RemoteAddr: r.RemoteAddr,
Deadline: deadline,
LookbackDelta: lookbackDelta,
@ -861,6 +862,7 @@ func queryRangeHandler(startTime time.Time, at *auth.Token, w http.ResponseWrite
Start: start,
End: end,
Step: step,
RemoteAddr: r.RemoteAddr,
Deadline: deadline,
MayCache: mayCache,
LookbackDelta: lookbackDelta,

View file

@ -20,8 +20,8 @@ func WriteActiveQueries(w io.Writer) {
now := time.Now()
for _, aqe := range aqes {
d := now.Sub(aqe.startTime)
fmt.Fprintf(w, "\tduration: %.3fs, id=%016X, accountID=%d, projectID=%d, query=%q, start=%d, end=%d, step=%d\n",
d.Seconds(), aqe.qid, aqe.accountID, aqe.projectID, aqe.q, aqe.start, aqe.end, aqe.step)
fmt.Fprintf(w, "\tduration: %.3fs, id=%016X, remote_addr=%q, accountID=%d, projectID=%d, query=%q, start=%d, end=%d, step=%d\n",
d.Seconds(), aqe.qid, aqe.remoteAddr, aqe.accountID, aqe.projectID, aqe.q, aqe.start, aqe.end, aqe.step)
}
}
@ -39,6 +39,7 @@ type activeQueryEntry struct {
end int64
step int64
qid uint64
remoteAddr string
q string
startTime time.Time
}
@ -57,6 +58,7 @@ func (aq *activeQueries) Add(ec *EvalConfig, q string) uint64 {
aqe.end = ec.End
aqe.step = ec.Step
aqe.qid = atomic.AddUint64(&nextActiveQueryID, 1)
aqe.remoteAddr = ec.RemoteAddr
aqe.q = q
aqe.startTime = time.Now()

View file

@ -77,6 +77,7 @@ type EvalConfig struct {
End int64
Step int64
RemoteAddr string
Deadline netstorage.Deadline
MayCache bool