August 2024
Software Bill of Materials (SBOMs)
We've introduced the ability to attach and manage Software Bill of Materials (SBOMs) to software versions through Memfault. This new functionality will help you streamline your software versioning process, keep track of everything that goes into your version releases, and ensure that you can confidently meet requirements associated with upcoming security regulations, like the EU Cyber Resilience Act and US Cyber Trust Mark.
We support attaching a single SBOM file to a software version easily in the Memfault web app by navigating to Versions tab > choose a Software Type that you would like to attach your SBOM file to > click "Upload" under the SBOM column. You can also download an existing SBOM from the same page.
We recommend uploading the SBOM via your CI build process for that specific version and you can find more information about that in our technical docs here, including how to integrate SBOMs using our CLI.
General
Added:
- Added: Support for webhooks as notification targets.
- Added: Values for Device attributes can be assigned in bulk from Device Search.
- Added: Device Filters to Issue Search.
- Added: Uploading SBOMs via Memfault's public API, and associated documentation.
- Added: Dashboard Cards can now be moved and copied to other Dashboards.
- Added: Normalization option for the Chart "Reboots by Population".
- Added: Segment summary in the tooltips of 'Percentiles by population' metrics Charts.
- Added: Ability to download Audit Logs as JSON from Admin → Audit Log.
- Added: The ability to pin comments within Issues.
- Added: Additional OTA- and SBOM-related events to the Audit Log.
- Added: OS Version distribution component to the Issue Details page.
Improved:
- Improved: Support for Trace Captured At Date within Issue Search.
- Improved: Additional filtering for recent traces search on the Issue Details page.
- Improved: Hardware Version added to Recent Traces and IIssue Details.
- Improved: Pie chart visualization for Attribute Distribution Charts.
- Improved: Additional methods to record Release Creation have been added to the Audit Log, including Delete Release and OTA Artifact creation.
Fixed:
- Fixed: Nested Traces Charts now refresh properly when refreshing a Top Issues Chart.
- Fixed: Regressed Issue notifications now include details from the Trace triggering regression instead of the Last Trace.
- Fixed: Log Files sorting adjusted to reflect Captured Date, not Created Date.
- Fixed: Stability Period charts now correctly reflect the computed stability period.
- Fixed: Normalized metric chart tooltip now shows both Population Count and Real Count.
- Fixed: In some cases, scheduled summaries were unable to be selected when creating an Alert.
- Fixed: Incorrect Dashboard selection when refining Issue Chart search criteria.
- Fixed: Version Matrix now refreshes after a release is activated.
- Fixed:
Last Seen: Never
now works properly on Device Search.
Changed:
- Changes: Issue Charts no longer have a default Dashboard selected to avoid accidentally selecting the wrong one.
- Changed: Archived Metrics are now hidden on the Device Timeline.
- Changed: Software Type and Software Version are now optional when uploading symbols.
- Changed: Device Counts and Report Counts in metric charts are restricted to customers with access to the Advanced Analytics Bundle.
- Changed: Time is always shown in the range selection when selecting Last Seen in Device search.
- Changed: Newly ingested Metrics are no longer marked as Timeseries by default.
MCU
Added:
- Added: Breaking change for
Support for namespacing Session Metrics,
allowing duplicate key names across heartbeats and sessions (e.g.,
heartbeat.cpu_temp
,session.cpu_temp
). - Added: Support for reboot reasons
kMfltRebootReason_DeepSleep
on nRF series SOCs. - Added: Kconfig option
CONFIG_MEMFAULT_RAM_BACKED_COREDUMP_REGION
for storing RAM-backed coredumps in Zephyr. - Added: Choice Kconfig
CONFIG_MEMFAULT_TLS_CERTS_FORMAT
to simplify certificate format selection (PEM or DER).
Improved:
- Improved: Usage of
MEMFAULT_ASSERT_HALT_IF_DEBUGGING_ENABLED
in Zephyr to control coredumps when debugging. - Improved: CLI results for the
post_chunks
command in ESP-IDF, providing more informative output.
Fixed:
- Fixed: HTTPS communication issue with Memfault on nRF91x (TLS
ENOPROTOOPT
error). - Fixed: Build errors for Zephyr 3.7.0 related to HTTP client and ESP32 port.
- Fixed: Bugs in
memfault_reboot_reason_get()
andmemfault_platform_reboot()
implementations in DA146x port. - Fixed: Compilation error in NCS v2.7.0 when building with Memfault firmware SDK v1.10.1.
Android
- SDK version 4.19.0 was released. Some highlights:
Added:
- Added: Support for automatically collecting the phone's IMEI number as a
metric (
phone.imei
). - Added: Device serial and override to diagnostics content provider.
Improved:
- Improved: Stable Hours algorithm to count only ANRs, non-WTF app crashes, kernel panics, and tombstones as "crashes." Optionally, crashes can be excluded from the algorithm (contact customer support for more details).
Fixed:
- Fixed: Bug in battery per-hour charge/discharge calculations using the wrong denominator.
- Fixed: Bug in SDK where heartbeats after reboots could fail to process.
- Fixed: Bug in SDK where
batterystats
collection could fail inconsistently. - Fixed: Bug when tracking Bort's own battery usage.
Changed:
- Changed: Disabled metrics handling in more places when Bort is disabled.
Linux
- SDK Version 1.14.0 was released. Some highlights:
Added:
- Added: Support for custom data recordings, allowing arbitrary data to be recorded on your device and uploaded to Memfault. This is useful for data that doesn't fit into the existing metrics or logs categories.
- Added:
memfaultd
will now capture the contents of the pstore file system as a custom data recording whenever there is a kernel panic. This recording is namedpstore
and can be enabled with thereboot.capture_pstore
configuration option. - Added: New core metric
memory_pct
to track the memory utilization of the device, representing the percentage of memory used at the time of the metric report.
Fixed:
- Fixed: Lowered log level for a log message related to system metric
collection from
warn
todebug
to reduce the volume of logs emitted in non-verbose mode.
Breaking:
- Breaking: The Minimum Supported Rust Version (MSRV) for
memfaultd
has been increased from 1.65.0 to 1.72.0. If you're using the includedmeta-rust-bin
layer, no changes are needed. Otherwise, update your Rust toolchain to version 1.72.0 or later.