This release contains:
* record_retention_enabled configuration key: when configuration value
is enabled copies of the last 100 telemetry record payload are kept
locally.
* record_server_delivery_enabled configuration key: when this key is
set to true (default value) records are reported to server. When key
is set to false records are not sent. This configuration can be used
with record_retention_enabled to retain debug information locally
only.
* A new switch (-i/--include_record) for 'telemctl journal' command,
this switch allows the inclusion of record contents when printing
journal to standard output.
Signed-off-by: avjarami <alex.v.jaramillo@intel.com>
This release contains:
* A new header event_id, this value can be used by a probe or probes to
group multiple records when these records are the result of a unique
event in the system, i.e. an update could create multiple records and
these records could be tagged with a single event id.
* Telemetry record logging, this change adds a log of records reported
to telemetry server. The log can be accessed using telemctl journal
sub-command.
Signed-off-by: avjarami <alex.v.jaramillo@intel.com>
This release contains:
* Fixes an issue where if the telemetry client bundle is added after
installation required directories were not created until the OS is
restarted. This change makes sure that all the required directories
are created before the telemd service is started.
* Adds an option to telemctl to indicate if telemd.service is active.
* Removes telemetry client temporary directories on telemetry opt-out.
* Add a base64 encoding routine to the nica library, this library can
be used by probes to encode binaries for http transport to telemetry
server.
* Fixes configuration parameter on hprobe.
* Adds a probe to report Boot Error Region Table if this record exists
for more information about BERT, consult ACPI spec
Because telemd does not restart when an update is installed the daemon
could get out of sync with probes if a new version of a probe requires a
new version of telemd. This change will trigger a restart when an update
takes place.
This release bumps the record format version to account for the new
headers added in the v1.14.0 release.
Signed-off-by: Patrick McCarty <patrick.mccarty@intel.com>
This release adds three new hardware metadata fields to include in
records created by libtelemetry: board_name, cpu_model, and
bios_version.
Signed-off-by: Patrick McCarty <patrick.mccarty@intel.com>
This release introduces some changes in behavior for the crash probe and
journal probe:
* The crash probe now ensures core files are kept whenever backtraces
are scrubbed from telemetry records, or when errors occur during runtime
operation. This improves the developer experience when running ones own
programs installed at arbitrary locations on the filesystem and also
avoids data loss; either the crash backtrace is sent via telemetry, or
when unable to send the backtrace, the core file is kept.
* The journal probe, by default, now only sends telemetry for journal
log messages indicating systemd service failures. The previous behavior
of sending any log messages above a certain log level is now wrapped
behind the "opt-in-no-privacy-filters" config setting.
Bug fixes include:
* Fixing a segfault crash in the configuration code that occurred
whenever an incomplete configuration file was encountered.
* Fixing a performance issue in 'telem-record-gen' to avoid extraneous
strlen() calls in the classification input validation code.
Signed-off-by: Patrick McCarty <patrick.mccarty@intel.com>
This release includes a change that results in lower memory consumption
for telemd when the service is idle.
Signed-off-by: Patrick McCarty <patrick.mccarty@intel.com>
This release completes the remaining work to remove the glib dependency
in favor of libnica.
Signed-off-by: Patrick McCarty <patrick.mccarty@intel.com>
This release includes further work on removing the glib dependency in
favor of libnica and updates the README file.
Signed-off-by: Patrick McCarty <patrick.mccarty@intel.com>
This release introduces a new feature for the crash probe. It will now
collect source file and line number information for each frame in a
backtrace if the data is available.
Also, this release saw the beginning of migrating the code base to use
libnica instead of glib, with the goal of reducing memory footprint of
the telemetry daemon and probes. Future releases will convert more
existing glib usage to libnica.
Signed-off-by: Patrick McCarty <patrick.mccarty@intel.com>
This release includes updates for man pages and improves support for the
new oops format in Linux 4.10 and newer.
Signed-off-by: Patrick McCarty <patrick.mccarty@intel.com>
This release reworks the journal probe to send records for log messages
with higher log levels (LOG_EMERG, LOG_ALERT, LOG_CRIT, LOG_ERR), and
also for messages that match EXIT_CODE="exited", which is set for
systemd services that have exited with an error code.
Also, a new opt-in feature has been added to disable certain privacy
filters in the probes. With the filters disabled, the crash probe will
collect backtraces for any crashing binary on the system, regardless of
where the binary is installed. Also, the oops probe will collect real
register values from kernel oopses instead of using "zero" or
"non-zero".
The opt in feature described above can be enabled by creating a file at:
/etc/telemetrics/opt-in-no-privacy-filters
Signed-off-by: Patrick McCarty <patrick.mccarty@intel.com>
This release improves reliability of both the crash and oops probes.
* The crash probe will now reprocess a core file if it encounters
missing symbols when creating backtraces the first time. This
improves telemetry when run on Clear Linux OS, which downloads debuginfo
on-the-fly as needed.
* The oops parsing will now capture "unreliable" stack frames for kernel
oopses using the same notation as the kernel ("? "). Previously, the
parsing code ignored the unreliable flag, so those frames appeared to be
trustworthy frames.
Signed-off-by: Patrick McCarty <patrick.mccarty@intel.com>
It's often useful to print a summary of configuration options for the
build, so add a AC_MSG_NOTICE() to the tail end of the configure script.
Signed-off-by: Patrick McCarty <patrick.mccarty@intel.com>