Skip to content

Commit 5f2a0bf

Browse files
Restore src/Monitors/HostResources/Task.cpp from 01bed2f.
1 parent b1509c1 commit 5f2a0bf

File tree

1 file changed

+11
-111
lines changed

1 file changed

+11
-111
lines changed

src/Monitors/HostResources/Task.cpp

Lines changed: 11 additions & 111 deletions
Original file line numberDiff line numberDiff line change
@@ -114,9 +114,7 @@ namespace Monitors
114114
DUNE::Tasks::Task(name, ctx),
115115
m_tstamp(0)
116116
{
117-
paramActive(Tasks::Parameter::SCOPE_GLOBAL,
118-
Tasks::Parameter::VISIBILITY_USER);
119-
117+
paramActive(Tasks::Parameter::SCOPE_GLOBAL, Tasks::Parameter::VISIBILITY_USER);
120118
m_num_cpus = sysconf(_SC_NPROCESSORS_ONLN);
121119
if (m_num_cpus <= 0 || m_num_cpus > c_max_cpu)
122120
{
@@ -132,7 +130,6 @@ namespace Monitors
132130
setEntityState(IMC::EntityState::ESTA_NORMAL, Status::CODE_IDLE);
133131
}
134132

135-
//! Reserve entity identifiers.
136133
void
137134
onEntityReservation(void)
138135
{
@@ -496,117 +493,20 @@ namespace Monitors
496493
{
497494
while (!stopping())
498495
{
499-
waitForMessages(0.01);
500-
496+
try
497+
{
498+
waitForMessages(0.01);
499+
}
500+
catch (...)
501+
{
502+
war("waitForMessages error");
503+
}
501504
if (!isActive())
502505
continue;
503506

504-
if (m_ram_check.overflow())
505-
{
506-
m_ram_check.reset();
507-
m_tstamp = Clock::get();
508-
uint8_t cpu = 0;
509-
try
510-
{
511-
cpu = (uint8_t)getDUNECPUUsage();
512-
if(m_num_cpus > 1 && cpu > 0)
513-
cpu /= m_num_cpus;
514-
}
515-
catch (std::exception& e)
516-
{
517-
war("Failed to get CPU usage: %s", e.what());
518-
cpu = 0;
519-
}
520-
catch (...)
521-
{
522-
war("Failed to get CPU usage: unknown error");
523-
cpu = 0;
524-
}
525-
526-
double ram = 0.0;
527-
try
528-
{
529-
ram = getDUNERAMUsage();
530-
}
531-
catch (std::exception& e)
532-
{
533-
war("Failed to get RAM usage: %s", e.what());
534-
ram = 0;
535-
}
536-
catch (...)
537-
{
538-
war("Failed to get RAM usage: unknown error");
539-
ram = 0;
540-
}
541-
542-
double swap = 0.0;
543-
try
544-
{
545-
swap = getDUNESwapUsage();
546-
}
547-
catch (std::exception& e)
548-
{
549-
war("Failed to get Swap usage: %s", e.what());
550-
swap = 0;
551-
}
552-
catch (...)
553-
{
554-
war("Failed to get Swap usage: unknown error");
555-
swap = 0;
556-
}
557-
558-
//dispatch CPU and RAM usage
559-
try{
560-
m_dune_cpu_usage[m_num_cpus].value = cpu;
561-
m_dune_cpu_usage[m_num_cpus].setTimeStamp(m_tstamp);
562-
dispatch(m_dune_cpu_usage[m_num_cpus]);
563-
}
564-
catch (std::exception& e)
565-
{
566-
war("Failed to dispatch CPU usage: %s", e.what());
567-
}
568-
catch (...)
569-
{
570-
war("Failed to dispatch CPU usage: unknown error");
571-
}
572-
#if IMC_RAM_USAGE_MESSAGE_EXISTS
573-
try{
574-
m_dune_ram_usage[0].value = ram * 1024.0f; // KB -> MB
575-
m_dune_ram_usage[0].setTimeStamp(m_tstamp);
576-
dispatch(m_dune_ram_usage[0]);
577-
m_dune_ram_usage[1].value = swap * 1024.0f; // KB -> MB
578-
m_dune_ram_usage[1].setTimeStamp(m_tstamp);
579-
dispatch(m_dune_ram_usage[1]);
580-
}
581-
catch (std::exception& e)
582-
{
583-
war("Failed to dispatch RAM usage: %s", e.what());
584-
}
585-
catch (...)
586-
{
587-
war("Failed to dispatch RAM usage: unknown error");
588-
}
589-
#endif
590-
try{
591-
//check if m_buffer_cpu_entity is empty
592-
const char* entity = m_buffer_cpu_entity.empty() ? "unknown" : m_buffer_cpu_entity.c_str();
593-
//set entity state with CPU, RAM and Swap usage
594-
trace("DUNE Process: CPU: %d%%, RAM: %.1fMB, Swap: %.1fMB | %s", cpu, ram, swap, entity);
595-
std::string msg = String::str("%s | DUNE (C:%d%%, R:%.1fMB, S:%.1fMB)", entity, cpu, ram, swap);
596-
setEntityState(IMC::EntityState::ESTA_NORMAL, msg);
597-
}
598-
catch (std::exception& e)
599-
{
600-
war("Failed to set entity state: %s", e.what());
601-
}
602-
catch (...)
603-
{
604-
war("Failed to set entity state: unknown error");
605-
}
606-
}
607-
else if (m_cpu_check.overflow())
507+
if (m_reads_check.overflow())
608508
{
609-
m_cpu_check.reset();
509+
m_reads_check.reset();
610510
m_tstamp = Clock::getSinceEpoch();
611511
getDuneUsageResources(m_tstamp);
612512
getUsageOfCPU(m_tstamp);

0 commit comments

Comments
 (0)