22 Commits

Author SHA1 Message Date
123c7ce857 Update copyright header on all files for 2024
Last release of 2023 is probably the best time to do this.
2023-12-29 11:16:59 -05:00
e654fbba08 Move debug condition handling to Logger
Avoids many dozens of conditionals sprinkled throughout the code by
centralizing this check into the main Logger instance.
2023-12-27 13:01:45 -05:00
d2d2a9c617 Include our newline atomically
Sometimes clashing log entries would print on the same line, likely due
to some sort of race condition in Python's print() built-in.

Instead, add a newline to our actual message and print without an end
character. This ensures atomic printing of our log messages.
2023-12-21 13:12:43 -05:00
11db3c5b20 Fix ordering during termination 2023-11-29 21:21:51 -05:00
fa12a3c9b1 Permit buffered log appending 2023-11-29 21:21:51 -05:00
787f4216b3 Expand Zookeeper log daemon prefix to match 2023-11-29 21:21:51 -05:00
83ceb41138 Add daemon name to Logger entries 2023-11-29 15:18:37 -05:00
2e5958640a Remove erroneous time from message 2023-11-29 15:12:41 -05:00
7abc697c8a Improve Zookeeper log handling
Ensures that messages are fully read before each append. Adds more
Zookeeper hits, but ensures logs won't be overwritten by multiple
daemons.

Also don't use a set on the client side, to avoid "removing duplicate"
entries erroneously.
2023-11-29 15:12:41 -05:00
311bb69785 Format based on updated Black 2023-09-12 16:41:02 -04:00
726d0a562b Update copyright header year 2022-10-06 11:55:27 -04:00
c41664d2da Reformat code with Black code formatter
Unify the code style along PEP and Black principles using the tool.
2021-11-06 03:02:43 -04:00
b14bc7e3a3 Add retry to log writes 2021-07-19 13:11:28 -04:00
4d6842f942 Don't bail out if write fails, keep retrying 2021-07-19 13:09:36 -04:00
e9df043c0a Ensure ZK logging does not block startup 2021-07-19 12:19:59 -04:00
5be968123f Readd 1 second queue get timeout
Otherwise daemon stops will sometimes inexplicably block.
2021-07-18 22:17:57 -04:00
99fd7ebe63 Fix excessive CPU due to looping 2021-07-18 22:06:50 -04:00
cffc96d156 Fix failure in creating base keys 2021-07-18 21:00:23 -04:00
b770e15a91 Fix final termination of logger
We need to do a bit more finagling with the logger on termination to
ensure that all messages are written and the queue drained before
actually terminating.
2021-07-18 19:53:00 -04:00
982dfd52c6 Adjust date output format 2021-07-18 19:00:54 -04:00
323c7c41ae Implement node logging into Zookeeper
Adds the ability to send node daemon logs to Zookeeper to facilitate a
command like "pvc node log", similar to "pvc vm log". Each node stores
its logs in a separate tree under "/logs" which can then be combined or
queried. By default, set by config, only 2000 lines are kept.
2021-07-18 17:11:43 -04:00
7dea5d2fac Move logger to common, fix buffering 2021-06-01 18:50:26 -04:00