2 =======================================
4 - Implement a factory method to create the Pingers objects. Something like:
5 smart_ptr<Pinger> pinger_ptr = PingerCreator::create(PingerCreator::Boost)
7 - Design a timer class on top of boost timer, but simpler.
9 - Include the i18n_noop in the strings, but this requires linking with the
12 - Use the I2n::Logger to log messages.
14 - Perform a better treatment of missing configuration items, actually the
15 application just crashes.
17 - Refactor the BoostPinger class, it is becoming a monster.
21 =======================================
23 - If one of the "[host]" in the configuration file omit the "interval" entry,
24 the application uses the next "[host]"'s "interval" entry, instead of a
25 default value. The problem is specific to the configuration read classes
26 that are not smart enough to verify which "[host]" have this entry and which
37 Thus, the tuples will be (A,1) , (B,3), (C,?), but A should have a default
38 value, instead of borrow B's value.
40 - The interval between each ping to the same host is 1 second later than in the
41 configuration file. For example, a ping configured to be performed each 5
44 - The overhead when handling a link that is down causes delays with the next
45 pings. This happens if the ping interval is a value close to the ping timeout.
46 So the application wait this amount to ping the next host.
47 This bug has something to do with the blocking ping, because the ping method
48 returns only after a reply or timeout, thus increasing the interval to the
49 next schedule ping to the same host and to the other hosts.
51 - If one ping fails, the subsequent analysis report that the ping is down:
54 - Host down: www.ufsc.br
55 - Speeding up ping interval to: 30s <-- should speed up, OK
56 - Time elapsed since last ping: 65s <-- elapsed time, OK
57 20 bytes from 150.162.2.10: icmp_seq=1 ttl=47 time=252 ms
58 - Host down: www.ufsc.br <-- dammit! It is not down, WRONG
59 - Speeding up ping interval to: 30s <-- should not speed up again, WRONG
60 - Time elapsed since last ping: 31s <-- elapsed time, OK, but should go
62 20 bytes from 150.162.2.10: icmp_seq=1 ttl=47 time=253 ms
63 - Host down: www.ufsc.br
64 - Speeding up ping interval to: 30s
65 - Time elapsed since last ping: 31s