This idea originated from a discussion with the engineering team.
We have been using the standard log4net API to write to Spotfire's standard log files by referencing the log4net.dll bundled with the product.
+ Spotfire.Dxp.SupportDiagnostics.log
+ Spotfire.Dxp.Worker.Host.<guid>.log
+ Spotfire.Dxp.Worker.Host.Debug.<guid>.log
In v14.0.11, the bundled log4net.dll was upgraded from v2 to v3, causing all of our custom extensions to stop working due to log4net version inconsistencies.
Below is the response from engineering team.
Because the logging functionality within custom extensions is extremely critical, we would like to see this addressed as soon as possible.
===
On general advice for custom extensions using log4net to write to Spotfire's standard log files:
Log4net is a package used for logging purposes within the Spotfire application. Adding it was not meant to be used so that customers can write to Spotfire's standard log files.
That said, not having a public logging API is acknowledged as a functionality currently lacking. To address this, we'd encourage you to file an idea or enhancement request for a Log API, and link this support case to it if possible.
In terms of current guidance, there is no strong recommendation by engineering on how to use log4net for custom extensions. Bundling the log4net package with the custom extension, even though possible for the Analyst client because it runs on .Net Framework, is not yet fully understood in terms of how it would behave when trying to write to the same log file.
Given this, compiling different versions of the custom extension so that they work for Spotfire 14.0.10 and 14.0.11 would be the safest solution.
On your second question — whether a single .spk compatible with both v14.0.10 and v14.0.11 is possible:
A single .spk file that would work in both Spotfire 14.0.10 and 14.0.11 is not achievable.
===