Mike Shapiro wrote: > Agree with your list. What is really needed is the floor wax > and the dessert topping. There's a missing project which is > a common, sensible API for error reporting, that would among other things: > > - If $SMF_FMRI is set, use stderr appropriately > - Could be set externally to use syslog as needed by the deployment > environment > - Allows for structured payloads to transfer data to FMA > - Could also capture data in a ring-buffer for post-mortem > analysis, including key stuff like stack, errno, etc. > - Can append/retrieve data from TSD or TLS such that a code path > that dives through multiple complex libraries can attach multiple > bits of error state to a single "token" and report it > - Each call site is also a DTrace USDT probe site that can be enabled
Some of the stuff in the "software fma" prototype touches on the above, or is designed aiming to contribute to an implementation of the above. The main component is a means of raising random events from userland (precise context limited in the prototype) and having them transported to fmd where they are post-processed into full protocol events which can be logged, diagnosed, subscribed to, notified etc. Our initial deliverables are pretty much orthogonal to the above, but I'd be very interested in taking some of the above further. Gavin