Antti Alasvuo
OMVP
May 20, 2023
visibility 2054
star star star star star
(1 votes)

Swapcode.Optimizely.AuditLog updated to v1.4.1

If you are using my audit log add-on Swapcode.Optimizely.AuditLog then I suggest that you update it in your solution.

I've been waiting now for few years for Optimizely to fix the styles used in the Change Log tool in admin view, but seems like they don't have time to fix the styles for the table.

In the past the log messages have not been visible without using browser developer tools to see the HTML source..

In this new version I've changed the structure of the activity log entry, and now you can see usually most of the relevant information.

There is still issue with the Change Log styling, you need to scroll the table to right, and the last column size depends on your browser window size, but there is nothing I can do about it ;-D

Another change I did was I added a new extension method for IServiceCollection, AddAuditLog(), which you should start using instead of the old way.

// replace old code
services.AddEmbeddedLocalization<AuditLogInitializationModule>();

// with the new extension method, which should be done after call to .AddCms()
.AddAuditLog();

The add-on is still using the initialization module to register the event handlers but this is preparation to change the implementation in a following update, so the AddAuditLog method actually just currently registers the embedded resources ;-)

The updated NuGet package should show up to the Optimizely NuGet feed shortly, but in the meantime you can manually get the updated NuGet package from my GitHub repository releases.

May 20, 2023

Comments

error Please login to comment.
Latest blogs
Surviving a Dirty Feed. Part 3: Error Handling and Event Batching

Committing a 250,000-row Optimizely catalog import row by row, returning a per-row failure report, and coalescing catalog events into one per batch.

Stanisław Szołkowski | Oct 16, 2026 |

Building UI Extensions for Optimizely SaaS CMS

Introduction Developers have been extending the functionality of Optimizely PaaS CMS for years using addons built in C# and deployed as NuGet...

Mark Stott | Oct 15, 2026

Cheapskate AI Translator: Because Translation Should Not Require a Second Mortgage

There is a particular kind of software project that begins with a detailed architecture document, a product roadmap, and a carefully assembled...

Linh Doan Cuu | Oct 15, 2026

Computed Fields in CMS 13 Content Contracts with Optimizely Graph

Content Contracts in Optimizely CMS 13 allow different content types to share a common structure when querying Optimizely Graph. But what if the...

Mardy | Oct 14, 2026