mirror of
https://github.com/openglow-org/forgefirm.git
synced 2026-09-27 16:51:12 -07:00
rsyslog replaces busybox syslogd/klogd (VIRTUAL-RUNTIME_base-utils-syslog, trimmed PACKAGECONFIG) and becomes the only log writer: the appended /etc/rsyslog.conf sets the inputs and the ff_line format and includes the per-logger rules that `forgectrl --render-syslog` renders from the machine settings at boot. forgefirm-logrotate becomes forgefirm-logging: render before rsyslog starts (S19), sweep the pre-syslog log files into /data/forgefirm/legacy-logs once, and rotate the tree at boot and hourly by rename + HUP instead of copytruncate. Pins bumped to the pushed forgectrl (syslog emitter, Logs tab, export), grblHAL-glowforge (syslog emitter) and python3-gfhardware apps (syslog handlers, capture dir); the CI harnesses set FFLOG_STDERR=1 so failure diagnostics keep the controller's log lines. BRINGUP carries the bench validation checklist (Next work item 14); this is an image change and rides the next flash.
31 lines
1.1 KiB
BlitzBasic
31 lines
1.1 KiB
BlitzBasic
SUMMARY = "ForgeFIRM logging tree: rsyslog rules at boot, rotation"
|
|
DESCRIPTION = "Boot-time glue for the ForgeFIRM logging tree \
|
|
(/data/log/forgefirm/<logger>/): renders the per-logger rsyslog rules \
|
|
from the machine settings before rsyslog starts (forgectrl \
|
|
--render-syslog), moves pre-syslog log files out of the way once, and \
|
|
drives size-capped logrotate at boot and hourly (a full /data breaks \
|
|
settings, update staging, and the controllers' own writes)."
|
|
LICENSE = "MIT"
|
|
LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302"
|
|
|
|
SRC_URI = " \
|
|
file://forgefirm.logrotate \
|
|
file://forgefirm-logging.init \
|
|
"
|
|
|
|
S = "${WORKDIR}"
|
|
|
|
inherit update-rc.d
|
|
|
|
INITSCRIPT_NAME = "forgefirm-logging"
|
|
# 19: before rsyslog's own script (syslog, S20) so the rendered rules
|
|
# exist when it reads its config.
|
|
INITSCRIPT_PARAMS = "start 19 2 3 4 5 ."
|
|
|
|
RDEPENDS:${PN} = "logrotate rsyslog forgectrl"
|
|
|
|
do_install() {
|
|
install -Dm 0644 ${WORKDIR}/forgefirm.logrotate ${D}${sysconfdir}/logrotate.d/forgefirm
|
|
install -Dm 0755 ${WORKDIR}/forgefirm-logging.init ${D}${sysconfdir}/init.d/forgefirm-logging
|
|
}
|