[pve-devel] Problem with getting current running tasks from api
Thomas Lamprecht
t.lamprecht at proxmox.com
Mon Nov 30 14:53:22 CET 2015
On 11/30/2015 02:13 PM, Eduard Ahmatgareev wrote:
> thanks, I try got log from api, and have new problem, number of lines
> from api got only 50.
> In api:
>
>
> {
> "n" : 9,
> "t" : "INFO: started backup task
> '2f24d203-0be4-4684-82b9-e76e50c7db51'"
> },
> skip
> {
> "n" : 47,
> "t" : "INFO: status: 37% (6988955648/18874368000), sparse 15%
> (2853744640), duration 712, 9/9 MB/s"
> },
> {
> "n" : 48,
> "t" : "INFO: status: 38% (7176519680/18874368000), sparse 15%
> (2859991040), duration 731, 9/9 MB/s"
> },
> {
> "n" : 49,
> "t" : "INFO: status: 39% (7363756032/18874368000), sparse 15%
> (2864693248), duration 750, 9/9 MB/s"
> },
> {
> "n" : 50,
> "t" : "INFO: status: 40% (7551451136/18874368000), sparse 15%
> (2873110528), duration 769, 9/9 MB/s"
> }
> ],
> "total" : 79
>
>
> In gui at this moment:
> INFO: started backup task '2f24d203-0be4-4684-82b9-e76e50c7db51'
> skip
> INFO: status: 68% (12840861696/18874368000), sparse 23% (4449501184),
> duration 1308, 9/1 MB/s
> INFO: status: 69% (13028032512/18874368000), sparse 24% (4636622848),
> duration 1327, 9/0 MB/s
> INFO: status: 70% (13215137792/18874368000), sparse 25% (4774141952),
> duration 1346, 9/2 MB/s
> INFO: status: 71% (13402308608/18874368000), sparse 26% (4939022336),
> duration 1365, 9/1 MB/s
>
>
>
> api return only 50 lines, how can I get all lines ruuning task via api?
>
>
If you got the task UPID and use that to get the task status you
normally get only 50 lines from the start of the task, you have two
parameters to control that behaviour.
First the 'limit' parameter, this denotes how many lines you get (and
is default to 50)
Second the 'start' parameter which denotes from which point you get
those 50 (or whatever value limit is set)
And note that you always get a value which says how many lines in the
log are, this is called 'total' and in your example it's 79.
So for example you could use this api call from within the pvesh tool to
get 80 lines starting from the 21st line (line 21 - 101):
> get
nodes/tre/tasks/UPID:tre:000011B9:0002F736:565C4399:qmmove:103:root at pam:/log
--limit 80 --start 20
For your case you have a few possible solutions, or use a big enough
limit number (for example 200) or make a "intelligent" algorithm which
queries only the newest lines with the start, limit parameters and the
information from total.
regards,
Thomas
More information about the pve-devel
mailing list