api daemons: fix sending log-reopen command
send_command serializes everything so it cannot be used to send a
raw, optimized command. Normally that means we get an error like
> 'unable to parse parameters (expected json object)'
when used that way.
Switch over to send_raw_command which does not re-serializes the
command.
Fixes: 45b8a032
("refactor send_command")
Originally-by: Dominik Csapak <d.csapak@proxmox.com>
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
This commit is contained in:
parent
238e5b573e
commit
869e4601b4
|
@ -737,11 +737,11 @@ async fn command_reopen_logfiles() -> Result<(), Error> {
|
||||||
// only care about the most recent daemon instance for each, proxy & api, as other older ones
|
// only care about the most recent daemon instance for each, proxy & api, as other older ones
|
||||||
// should not respond to new requests anyway, but only finish their current one and then exit.
|
// should not respond to new requests anyway, but only finish their current one and then exit.
|
||||||
let sock = server::our_ctrl_sock();
|
let sock = server::our_ctrl_sock();
|
||||||
let f1 = server::send_command(sock, "{\"command\":\"api-access-log-reopen\"}\n");
|
let f1 = server::send_raw_command(sock, "{\"command\":\"api-access-log-reopen\"}\n");
|
||||||
|
|
||||||
let pid = server::read_pid(buildcfg::PROXMOX_BACKUP_API_PID_FN)?;
|
let pid = server::read_pid(buildcfg::PROXMOX_BACKUP_API_PID_FN)?;
|
||||||
let sock = server::ctrl_sock_from_pid(pid);
|
let sock = server::ctrl_sock_from_pid(pid);
|
||||||
let f2 = server::send_command(sock, "{\"command\":\"api-access-log-reopen\"}\n");
|
let f2 = server::send_raw_command(sock, "{\"command\":\"api-access-log-reopen\"}\n");
|
||||||
|
|
||||||
match futures::join!(f1, f2) {
|
match futures::join!(f1, f2) {
|
||||||
(Err(e1), Err(e2)) => Err(format_err!("reopen commands failed, proxy: {}; api: {}", e1, e2)),
|
(Err(e1), Err(e2)) => Err(format_err!("reopen commands failed, proxy: {}; api: {}", e1, e2)),
|
||||||
|
|
Loading…
Reference in New Issue