[Seaside] Error handlers

Johan Brichau johan at inceptive.be
Sun Aug 2 09:49:28 UTC 2020


You can check out SmalltalkCI (https://github.com/hpi-swa/smalltalkCI <https://github.com/hpi-swa/smalltalkCI>) if you want to see the Fuel serialisation of a stack at work. By default, for every failing test, the stack is serialized to disk using Fuel.
I don’t think there are Seaside-specific issues to mind, but perhaps somebody who is doing that already can chime in?

Johan

> On 1 Aug 2020, at 22:08, Esteban Maringolo <emaringolo at gmail.com> wrote:
> 
> Hi Johan, 
> 
> I wasn't aware of this Sentry integration, thanks for the reference (although it might seem overkill for my _current_ needs).
> 
> For other Seaside app I have a custom error handler that writes the stack to disk, but it leverages on some existing features, already provided by VisualWorks (+customer tweaks).
> So I can do `anException dumpLogFile` and it will dump the whole stack trace to the globally specified "log dumps" directory.
> 
> But since doing a post-mortem analysis with Fuel could be a superior option, that's why I wanted to ask about its existence, before adding it to the list of "things to do whenever I have time" after I finish salvaging a VPS do-release-upgrade that went bananas :-D
> 
> Regards!
> 
> Esteban A. Maringolo
> 
> 
> On Sat, Aug 1, 2020 at 3:33 PM Johan Brichau <johan at inceptive.be <mailto:johan at inceptive.be>> wrote:
> In addition to ’saving the stack to the objectlog in Gemstone’, we also report the error to sentry.io <http://sentry.io/> using a port of https://github.com/peteruhnak/pharo-sentry <https://github.com/peteruhnak/pharo-sentry>
> Although I must say Sentry does not cope too well with the Smalltalk stack trace, there might be some room for improvement.
> 
> But there is hardly anything Seaside-specific to it, as you just need to subclass WAExceptionHandler and override the necessary handle methods with whatever you want to export.
> 
> Also: serializing the stack (printing) is probably quite different in each Smalltalk dialect. At least I know we have vastly different code between Pharo and GemStone for that.
> 
> cheers
> Johan
> 
>> On 1 Aug 2020, at 19:22, Esteban Maringolo <emaringolo at gmail.com <mailto:emaringolo at gmail.com>> wrote:
>> 
>> Hi Jonathan,
>> 
>> I remember Mariano Martinez (who developed Fuel initially, cc: for the heads up) did something like this while working in the Quuve project, but with GemStone
>> I tried to access it but it's in SmalltalkHub and it is down now.
>> 
>> At this point a text dump of the stacktrace could work.
>> 
>> Regards!
>> 
>> Esteban A. Maringolo
>> 
>> 
>> On Sat, Aug 1, 2020 at 2:02 PM Jonathan van Alteren <jvalteren at objectguild.com <mailto:jvalteren at objectguild.com>> wrote:
>> Hi Esteban,
>> 
>> I've been wanting to do the same, but haven't had the time to implement this yet. However, I did find the following links that will be of use:
>> 
>> https://marianopeck.blog/2012/01/19/moving-contexts-and-debuggers-between-images-with-fuel/ <https://marianopeck.blog/2012/01/19/moving-contexts-and-debuggers-between-images-with-fuel/>
>> https://github.com/ba-st/Launchpad/blob/release-candidate/docs/Debugging.md <https://github.com/ba-st/Launchpad/blob/release-candidate/docs/Debugging.md>
>> 
>> Some of our fellow Smalltalkers have paved the road for us already ;-)
>> 
>> I would love to hear about your results!
>> 
>> 
>> Best,
>> 
>> 
>>  <https://objectguild.com/>	
>> Jonathan van Alteren
>> Founding Member | Object Guild B.V.
>> Sustainable Software for Purpose-Driven Organizations
>> 
>> +316 22500930
>> jvalteren at objectguild.com <mailto:jvalteren at objectguild.com>	
>> On 1 Aug 2020, 17:32 +0200, Esteban Maringolo <emaringolo at gmail.com <mailto:emaringolo at gmail.com>>, wrote:
>>> Hi all,
>>> 
>>> Does anybody know about a publicly available Seaside Error handler
>>> that serializes the exception to disk (to a configurable location)
>>> either in a plaintext format or, ideally, using Fuel?
>>> 
>>> Thanks!
>>> 
>>> Esteban A. Maringolo
>>> _______________________________________________
>>> seaside mailing list
>>> seaside at lists.squeakfoundation.org <mailto:seaside at lists.squeakfoundation.org>
>>> http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside <http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside>
>> _______________________________________________
>> seaside mailing list
>> seaside at lists.squeakfoundation.org <mailto:seaside at lists.squeakfoundation.org>
>> http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside <http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside>
>> _______________________________________________
>> seaside mailing list
>> seaside at lists.squeakfoundation.org <mailto:seaside at lists.squeakfoundation.org>
>> http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside <http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside>
> 
> _______________________________________________
> seaside mailing list
> seaside at lists.squeakfoundation.org <mailto:seaside at lists.squeakfoundation.org>
> http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside <http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside>
> _______________________________________________
> seaside mailing list
> seaside at lists.squeakfoundation.org
> http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.squeakfoundation.org/pipermail/seaside/attachments/20200802/aa7ffe5e/attachment-0001.html>


More information about the seaside mailing list