HLCC Documentation 3.0.0
Loading...
Searching...
No Matches
monitoring.hpp
Go to the documentation of this file.
1// SPDX-FileCopyrightText: 2020-2025 European Southern Observatory (ESO)
2//
3// SPDX-License-Identifier: LGPL-3.0-only
4
13//We are leave this class for now but we should think and decide if we want to keep it
14
15#ifndef HLCC_PFSSIMHLCC_MONITORING_HPP
16#define HLCC_PFSSIMHLCC_MONITORING_HPP
17
18#include <chrono>
19#include <string>
20
22
23namespace hlcc::pfssimhlcc {
24
25
33
34public:
36 void SetIterationStart();
37
38 void AddTotalElapsed(std::chrono::nanoseconds elapsed);
39 void AddMalPubElapsed(std::chrono::nanoseconds elapsed);
40 void AddOldbWriteElapsed(std::chrono::nanoseconds elapsed);
42
43 std::chrono::nanoseconds GetTimeSinceReset() const;
44 std::string PrintStatsAndReset();
45
46private:
47
48 std::chrono::nanoseconds m_dur_it_total; // current iteration
49 std::chrono::nanoseconds m_dur_cum_total; // cumulative since last reset
50 std::chrono::nanoseconds m_dur_max_total; // max since last reset
51
52 std::chrono::nanoseconds m_dur_it_mal_pub;
53 std::chrono::nanoseconds m_dur_cum_mal_pub;
54 std::chrono::nanoseconds m_dur_max_mal_pub;
55
56 std::chrono::nanoseconds m_dur_it_oldb_write;
57 std::chrono::nanoseconds m_dur_cum_oldb_write;
58 std::chrono::nanoseconds m_dur_max_oldb_write;
59
60 std::chrono::steady_clock::time_point m_last_reset_t;
61 std::size_t m_iteration_count;
62
63 void AddIterationValues();
64 void ResetIteration();
65};
66
67} // namespace hlcc::pfssimhlcc
68#endif // HLCC_PFSSIMHLCC_MONITORING_HPP
void AddTotalElapsed(std::chrono::nanoseconds elapsed)
void AddMalPubElapsed(std::chrono::nanoseconds elapsed)
ElapsedTimeStats()
Definition monitoring.cpp:24
void AddOldbWriteElapsed(std::chrono::nanoseconds elapsed)
void AddObservablePublisherElapsed(const hlcc::oldbmux::PublishingTimeElapsed &pte)
Definition monitoring.cpp:75
void SetIterationStart()
Definition monitoring.cpp:30
std::string PrintStatsAndReset()
Definition monitoring.cpp:85
std::chrono::nanoseconds GetTimeSinceReset() const
Definition monitoring.cpp:80
Definition actionMgr.cpp:34
Definition observablePublisher.hpp:31