29 #include <ndn-cxx/util/indented-stream.hpp>
35 const std::function<
void()>& onSuccess,
36 const Controller::DatasetFailCallback& onFailure,
37 const CommandOptions& options)
39 controller.fetch<ndn::nfd::ForwarderGeneralStatusDataset>(
40 [
this, onSuccess] (
const ForwarderStatus& result) {
50 return status.getCurrentTimestamp() - status.getStartTimestamp();
62 os <<
"<generalStatus>";
64 os <<
"<version>" <<
xml::Text{item.getNfdVersion()} <<
"</version>";
70 os <<
"<nNameTreeEntries>" << item.getNNameTreeEntries() <<
"</nNameTreeEntries>";
71 os <<
"<nFibEntries>" << item.getNFibEntries() <<
"</nFibEntries>";
72 os <<
"<nPitEntries>" << item.getNPitEntries() <<
"</nPitEntries>";
73 os <<
"<nMeasurementsEntries>" << item.getNMeasurementsEntries() <<
"</nMeasurementsEntries>";
74 os <<
"<nCsEntries>" << item.getNCsEntries() <<
"</nCsEntries>";
76 os <<
"<packetCounters>";
77 os <<
"<incomingPackets>"
78 <<
"<nInterests>" << item.getNInInterests() <<
"</nInterests>"
79 <<
"<nData>" << item.getNInData() <<
"</nData>"
80 <<
"<nNacks>" << item.getNInNacks() <<
"</nNacks>"
81 <<
"</incomingPackets>";
82 os <<
"<outgoingPackets>"
83 <<
"<nInterests>" << item.getNOutInterests() <<
"</nInterests>"
84 <<
"<nData>" << item.getNOutData() <<
"</nData>"
85 <<
"<nNacks>" << item.getNOutNacks() <<
"</nNacks>"
86 <<
"</outgoingPackets>";
87 os <<
"</packetCounters>";
89 os <<
"<nSatisfiedInterests>" << item.getNSatisfiedInterests() <<
"</nSatisfiedInterests>";
90 os <<
"<nUnsatisfiedInterests>" << item.getNUnsatisfiedInterests() <<
"</nUnsatisfiedInterests>";
92 os <<
"</generalStatus>";
98 os <<
"General NFD status:\n";
99 ndn::util::IndentedStream indented(os,
" ");
108 os << ia(
"version") << item.getNfdVersion()
111 << ia(
"uptime") << text::formatDuration<time::seconds>(
calculateUptime(item),
true);
113 os << ia(
"nNameTreeEntries") << item.getNNameTreeEntries()
114 << ia(
"nFibEntries") << item.getNFibEntries()
115 << ia(
"nPitEntries") << item.getNPitEntries()
116 << ia(
"nMeasurementsEntries") << item.getNMeasurementsEntries()
117 << ia(
"nCsEntries") << item.getNCsEntries();
119 os << ia(
"nInInterests") << item.getNInInterests()
120 << ia(
"nOutInterests") << item.getNOutInterests()
121 << ia(
"nInData") << item.getNInData()
122 << ia(
"nOutData") << item.getNOutData()
123 << ia(
"nInNacks") << item.getNInNacks()
124 << ia(
"nOutNacks") << item.getNOutNacks()
125 << ia(
"nSatisfiedInterests") << item.getNSatisfiedInterests()
126 << ia(
"nUnsatisfiedInterests") << item.getNUnsatisfiedInterests();
Print attributes of an item.
std::string formatTimestamp(time::system_clock::time_point t)