I am not sure if json is a good idea here. We use colon separated lists for everything else, so I would prefer that. It is easier to parse inside C, which is important when you want to generate RRD databases from inside pmxcfs ...
Also, consider that it is quite hard to change that format later, because all cluster nodes reads/write that data. So do we want to generate some RRD databases with that data? > On 25 June 2019 00:04 Alexandre Derumier <aderum...@odiso.com> wrote: > > > Signed-off-by: Alexandre Derumier <aderum...@odiso.com> > --- > PVE/Service/pvestatd.pm | 22 ++++++++++++++++++++++ > 1 file changed, 22 insertions(+) > > diff --git a/PVE/Service/pvestatd.pm b/PVE/Service/pvestatd.pm > index e138b2e8..bad1b73d 100755 > --- a/PVE/Service/pvestatd.pm > +++ b/PVE/Service/pvestatd.pm > @@ -37,6 +37,12 @@ PVE::Status::Plugin->init(); > > use base qw(PVE::Daemon); > > +my $have_sdn; > +eval { > + require PVE::API2::Network::SDN; > + $have_sdn = 1; > +}; > + > my $opt_debug; > my $restart_request; > > @@ -457,6 +463,16 @@ sub update_ceph_version { > } > } > > +sub update_sdn_status { > + > + if($have_sdn) { > + my ($transport_status, $vnet_status) = PVE::Network::SDN::status(); > + > + my $status = $transport_status ? encode_json($transport_status) : undef; > + PVE::Cluster::broadcast_node_kv("sdn", $status); > + } > +} > + > sub update_status { > > # update worker list. This is not really required and > @@ -524,6 +540,12 @@ sub update_status { > $err = $@; > syslog('err', "error getting ceph services: $err") if $err; > > + eval { > + update_sdn_status(); > + }; > + $err = $@; > + syslog('err', "sdn status update error: $err") if $err; > + > } > > my $next_update = 0; > -- > 2.20.1 > > _______________________________________________ > pve-devel mailing list > pve-devel@pve.proxmox.com > https://pve.proxmox.com/cgi-bin/mailman/listinfo/pve-devel _______________________________________________ pve-devel mailing list pve-devel@pve.proxmox.com https://pve.proxmox.com/cgi-bin/mailman/listinfo/pve-devel