Also xmllint has '--xpath' (unless you are running something as old as RHEL6) and is available on every linux distro.<div><br></div><div>Best Regards,</div><div>Strahil Nikolov</div><div><br><div> <br> <blockquote style="margin: 0 0 20px 0;"> <div style="font-family:Roboto, sans-serif; color:#6D00F6;"> <div>On Mon, Mar 21, 2022 at 15:41, Ken Gaillot</div><div><kgaillot@redhat.com> wrote:</div> </div> <div style="padding: 10px 0 0 20px; margin: 10px 0 0 0; border-left: 1px solid #6D00F6;"> On Mon, 2022-03-21 at 08:27 +0100, Ulrich Windl wrote:<br clear="none">> > > > Ken Gaillot <<a shape="rect" ymailto="mailto:kgaillot@redhat.com" href="mailto:kgaillot@redhat.com">kgaillot@redhat.com</a>> schrieb am 18.03.2022 um<br clear="none">> > > > 13:39 in<br clear="none">> Nachricht<br clear="none">> <<a shape="rect" ymailto="mailto:fd60ce035160e9b13ff84ead2ca88f63d9597529.camel@redhat.com" href="mailto:fd60ce035160e9b13ff84ead2ca88f63d9597529.camel@redhat.com">fd60ce035160e9b13ff84ead2ca88f63d9597529.camel@redhat.com</a>>:<br clear="none">> > On Fri, 2022‑03‑18 at 08:46 +0100, Ulrich Windl wrote:<br clear="none">> > > Hi!<br clear="none">> > > <br clear="none">> > > Parsing the output of crm_mon I wonder:<br clear="none">> > > Is there a collection of sample outputs for pacemaker 1 and 2<br clear="none">> > > formats<br clear="none">> > > showing all types of resources?<br clear="none">> > <br clear="none">> > Ideally, any parsing should be done of the XML output generated by<br clear="none">> > ‑‑<br clear="none">> > output‑as=xml since 2.0.3 and ‑‑as‑xml before then (the output is<br clear="none">> > identical other than the outermost tag).<br clear="none">> <br clear="none">> Agreed, but it's much trickier to parse XML with awk ;-)<br clear="none">> Maybe it' even less efficient (unless crm_mon itself is much more<br clear="none">> efficient<br clear="none">> when out putting XML)<br clear="none">> With XPath support, I might be able to create the output I need using<br clear="none">> xrm_mon<br clear="none">> only, but that's not implemented.<br clear="none">> <br clear="none">> Regards,<br clear="none">> Ulrich<br clear="none"><br clear="none">xmlstarlet can search xpaths, e.g.<br clear="none"><br clear="none">crm_mon -1 --output-as=xml | xmlstarlet sel -t -v "//element/@attribute"<br clear="none"><br clear="none">> <br clear="none">> <br clear="none">> > The XML output is stable and only gets backward‑compatible<br clear="none">> > additions<br clear="none">> > once in a long while, but the text output changes more frequently<br clear="none">> > and<br clear="none">> > significantly.<br clear="none">> > <br clear="none">> > There's an RNG schema for it, api‑result.rng (where it's installed<br clear="none">> > depends on your build; in the source repository, make generates it<br clear="none">> > under xml/api).<br clear="none">> > <br clear="none">> > > Also I realized that the coutput for clone sets in unfortunate:<br clear="none">> > > Consider a normal primitive like this:<br clear="none">> > >   * primitive_name    (ocf::heartbeat:agent_name):  Started<br clear="none">> > > host‑name<br clear="none">> > > And a clone set:<br clear="none">> > >   * Clone Set: clone_name [primitive_name]:<br clear="none">> > > <br clear="none">> > > If you want to filter clone sets by resource agent you're lost<br clear="none">> > > there.<br clear="none">> > > It would have been nicht if the format of clone sets were:<br clear="none">> > >   * Clone Set: clone_name [primitive_name]<br clear="none">> > > (ocf::heartbeat:agent_name):<br clear="none">> > > <br clear="none">> > > I see that there's the "‑R" option that "expands" the clones<br clear="none">> > > similar<br clear="none">> > > as resource groups like this:<br clear="none">> > >     * primitive_name     (ocf::heartbeat:agent):    Started<br clear="none">> > > host‑name<br clear="none">> > > <br clear="none">> > > Regards,<br clear="none">> > > Ulrich<br clear="none">> > > <br clear="none">> > > <br clear="none">> > > <br clear="none">> > > <br clear="none">> > > <br clear="none">> > > <br clear="none">> > > _______________________________________________<br clear="none">> > > Manage your subscription:<br clear="none">> > > <a shape="rect" href="https://lists.clusterlabs.org/mailman/listinfo/users " target="_blank">https://lists.clusterlabs.org/mailman/listinfo/users </a><br clear="none">> > > <br clear="none">> > > ClusterLabs home: <a shape="rect" href="https://www.clusterlabs.org/ " target="_blank">https://www.clusterlabs.org/ </a><br clear="none">> > > <br clear="none">> > ‑‑ <br clear="none">> > Ken Gaillot <<a shape="rect" ymailto="mailto:kgaillot@redhat.com" href="mailto:kgaillot@redhat.com">kgaillot@redhat.com</a>><br clear="none">> > <br clear="none">> > _______________________________________________<br clear="none">> > Manage your subscription:<br clear="none">> > <a shape="rect" href="https://lists.clusterlabs.org/mailman/listinfo/users " target="_blank">https://lists.clusterlabs.org/mailman/listinfo/users </a><br clear="none">> > <br clear="none">> > ClusterLabs home: <a shape="rect" href="https://www.clusterlabs.org/ " target="_blank">https://www.clusterlabs.org/ </a><div class="yqt0748159673" id="yqtfd14652"><br clear="none">> <br clear="none">> <br clear="none">> _______________________________________________<br clear="none">> Manage your subscription:<br clear="none">> <a shape="rect" href="https://lists.clusterlabs.org/mailman/listinfo/users" target="_blank">https://lists.clusterlabs.org/mailman/listinfo/users</a><br clear="none">> <br clear="none">> ClusterLabs home: <a shape="rect" href="https://www.clusterlabs.org/" target="_blank">https://www.clusterlabs.org/</a><br clear="none">-- <br clear="none">Ken Gaillot <<a shape="rect" ymailto="mailto:kgaillot@redhat.com" href="mailto:kgaillot@redhat.com">kgaillot@redhat.com</a>><br clear="none"><br clear="none">_______________________________________________<br clear="none">Manage your subscription:<br clear="none"><a shape="rect" href="https://lists.clusterlabs.org/mailman/listinfo/users" target="_blank">https://lists.clusterlabs.org/mailman/listinfo/users</a><br clear="none"><br clear="none">ClusterLabs home: <a shape="rect" href="https://www.clusterlabs.org/" target="_blank">https://www.clusterlabs.org/</a><br clear="none"></div> </div> </blockquote></div></div>