Message boards : BOINC client : OS X & crash logs
Message board moderation
Author | Message |
---|---|
Send message Joined: 7 Sep 05 Posts: 13 |
This is a feature request, from one developer to another. Add code for the apple-darwin version of boinc to look in ~/Library/Logs/CrashReporter for boinc.crash.log and crash logs for the various projects' client applications it runs. These logs, along with .xMAP files (from CodeWarrior) or some kind of STABs info (from GCC) can be used to generate a "real" backtrace, from which it might be possible to isolate crashes happening "in the wild." Here is a sample crash log for boinc, which has happened twice so far on my laptop: ********** Host Name: nathanhtitanium.technosloth.com Date/Time: 2005-08-27 09:20:24 -0700 OS Version: 10.3.9 (Build 7W98) Report Version: 2 Command: boinc Path: /Applications/BOINCManager.app/Contents/Resources/boinc Version: ??? (???) PID: 5341 Thread: 0 Exception: EXC_BAD_ACCESS (0x0001) Codes: KERN_INVALID_ADDRESS (0x0001) at 0xdffffa98 Thread 0 Crashed: 0 boinc 0x00022be0 0x1000 + 0x21be0 1 boinc 0x00022ff8 0x1000 + 0x21ff8 2 boinc 0x0000f36c 0x1000 + 0xe36c 3 boinc 0x00021af8 0x1000 + 0x20af8 4 boinc 0x00006b6c 0x1000 + 0x5b6c 5 boinc 0x00006a0c 0x1000 + 0x5a0c PPC Thread State: srr0: 0x00022be0 srr1: 0x0200f030 vrsave: 0x00000000 cr: 0x44000222 xer: 0x00000004 lr: 0x00022b0c ctr: 0x00000000 r0: 0x00000001 r1: 0xbffff9d0 r2: 0x0000001f r3: 0x00000000 r4: 0x00000001 r5: 0xbffff9a8 r6: 0x0002f8c4 r7: 0x431092c8 r8: 0x00000003 r9: 0x00071008 r10: 0x00000000 r11: 0xdffffa04 r12: 0x9011bd60 r13: 0x00000000 r14: 0x00000000 r15: 0x00000000 r16: 0x00000000 r17: 0x00000000 r18: 0x00000000 r19: 0x00000000 r20: 0x00000000 r21: 0x00000000 r22: 0x00000000 r23: 0x00000000 r24: 0x00000000 r25: 0xbffffc58 r26: 0xbffffe08 r27: 0x00300f60 r28: 0x00000000 r29: 0x00000001 r30: 0x00000001 r31: 0x00071008 Binary Images Description: 0x1000 - 0x5ffff boinc /Applications/BOINCManager.app/Contents/Resources/boinc 0x73230000 - 0x73233fff libmx.A.dylib /usr/lib/libmx.A.dylib 0x80a50000 - 0x80ad4fff libstdc++.6.dylib /usr/lib/libstdc++.6.dylib 0x80c80000 - 0x80c88fff libgcc_s.1.dylib /usr/lib/libgcc_s.1.dylib 0x8fe00000 - 0x8fe4ffff dyld /usr/lib/dyld 0x90000000 - 0x9014ffff libSystem.B.dylib /usr/lib/libSystem.B.dylib 0x901c0000 - 0x9026dfff com.apple.CoreFoundation 6.3.8 (299.36) /System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation 0x902b0000 - 0x90529fff com.apple.CoreServices.CarbonCore 10.3.7 /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/CarbonCore.framework/Versions/A/CarbonCore 0x90584000 - 0x905f3fff com.apple.framework.IOKit 1.3.6 (???) /System/Library/Frameworks/IOKit.framework/Versions/A/IOKit 0x90610000 - 0x9069afff com.apple.CoreServices.OSServices 3.0.1 /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/OSServices.framework/Versions/A/OSServices 0x90700000 - 0x90700fff com.apple.CoreServices 10.3 (???) /System/Library/Frameworks/CoreServices.framework/Versions/A/CoreServices 0x90702000 - 0x90769fff com.apple.audio.CoreAudio 2.1.3 /System/Library/Frameworks/CoreAudio.framework/Versions/A/CoreAudio 0x907cc000 - 0x907d4fff libbsm.dylib /usr/lib/libbsm.dylib 0x907f0000 - 0x907f9fff com.apple.DiskArbitration 2.0.5 /System/Library/PrivateFrameworks/DiskArbitration.framework/Versions/A/DiskArbitration 0x90810000 - 0x90810fff com.apple.ApplicationServices 1.0 (???) /System/Library/Frameworks/ApplicationServices.framework/Versions/A/ApplicationServices 0x908c5000 - 0x90915fff com.apple.HIServices 1.4.1 (0.0.1d1) /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/HIServices.framework/Versions/A/HIServices 0x90940000 - 0x909b3fff com.apple.DesktopServices 1.2.5 /System/Library/PrivateFrameworks/DesktopServicesPriv.framework/Versions/A/DesktopServicesPriv 0x90c32000 - 0x90c46fff libCGATS.A.dylib /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/CoreGraphics.framework/Versions/A/Resources/libCGATS.A.dylib 0x90d00000 - 0x90d1bfff com.apple.SystemConfiguration 1.7.1 (???) /System/Library/Frameworks/SystemConfiguration.framework/Versions/A/SystemConfiguration 0x90d40000 - 0x90d40fff com.apple.Carbon 10.3 (???) /System/Library/Frameworks/Carbon.framework/Versions/A/Carbon 0x910b0000 - 0x91101fff com.apple.bom 1.2.5 (63.2) /System/Library/PrivateFrameworks/Bom.framework/Versions/A/Bom 0x912e0000 - 0x912f7fff com.apple.LangAnalysis 1.5.4 /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/LangAnalysis.framework/Versions/A/LangAnalysis 0x91303000 - 0x9136cfff com.apple.htmlrendering 1.1.2 /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HTMLRendering.framework/Versions/A/HTMLRendering 0x913a0000 - 0x9145ffff ColorSync /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ColorSync.framework/Versions/A/ColorSync 0x915e0000 - 0x91699fff com.apple.QD 3.4.67 (???) /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/QD.framework/Versions/A/QD 0x916e0000 - 0x91773fff com.apple.print.framework.PrintCore 3.3 /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/PrintCore.framework/Versions/A/PrintCore 0x917e0000 - 0x917f0fff com.apple.speech.recognition.framework 3.3 /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/SpeechRecognition.framework/Versions/A/SpeechRecognition 0x91810000 - 0x9182afff com.apple.openscripting 1.2.1 (???) /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/OpenScripting.framework/Versions/A/OpenScripting 0x91850000 - 0x91860fff com.apple.ImageCapture 2.1.5 /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/ImageCapture.framework/Versions/A/ImageCapture 0x91890000 - 0x9189cfff com.apple.help 1.0.1 /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/Help.framework/Versions/A/Help 0x918c0000 - 0x918cdfff com.apple.CommonPanels 1.2.1 (1.0) /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/CommonPanels.framework/Versions/A/CommonPanels 0x918f0000 - 0x9193efff com.apple.print.framework.Print 3.3 /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/Print.framework/Versions/A/Print 0x91967000 - 0x91972fff libCSync.A.dylib /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/CoreGraphics.framework/Versions/A/Resources/libCSync.A.dylib 0x91990000 - 0x9199bfff com.apple.securityhi 1.2 (90) /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/SecurityHI.framework/Versions/A/SecurityHI 0x91a40000 - 0x91ab3fff com.apple.NavigationServices 3.3.3 /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/NavigationServices.framework/Versions/A/NavigationServices 0x91b10000 - 0x91b2afff libPDFRIP.A.dylib /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/CoreGraphics.framework/Versions/A/Resources/libPDFRIP.A.dylib 0x91b50000 - 0x91b5ffff libPSRIP.A.dylib /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/CoreGraphics.framework/Versions/A/Resources/libPSRIP.A.dylib 0x91b80000 - 0x91b93fff libRIP.A.dylib /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/CoreGraphics.framework/Versions/A/Resources/libRIP.A.dylib 0x92070000 - 0x92096fff com.apple.FindByContent 1.4 (1.2) /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/FindByContent.framework/Versions/A/FindByContent 0x920c0000 - 0x922a7fff com.apple.security 2.3 (176) /System/Library/Frameworks/Security.framework/Versions/A/Security 0x923c4000 - 0x923fcfff com.apple.AE 1.4 /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/AE.framework/Versions/A/AE 0x92430000 - 0x92468fff com.apple.LaunchServices 10.3.5 (98.4) /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/LaunchServices 0x927f0000 - 0x92827fff com.apple.CFNetwork 1.2.1 (7) /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/CFNetwork.framework/Versions/A/CFNetwork 0x92880000 - 0x92c05fff com.apple.HIToolbox 1.3.7 (???) /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HIToolbox.framework/Versions/A/HIToolbox 0x939a0000 - 0x939b4fff libcups.2.dylib /usr/lib/libcups.2.dylib 0x939d0000 - 0x939d4fff libmathCommon.A.dylib /usr/lib/system/libmathCommon.A.dylib 0x945b0000 - 0x945b9fff libz.1.dylib /usr/lib/libz.1.dylib 0x94610000 - 0x9462afff libresolv.9.dylib /usr/lib/libresolv.9.dylib 0x94650000 - 0x946affff com.apple.SearchKit 1.0.2 /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/SearchKit.framework/Versions/A/SearchKit 0x946ed000 - 0x94705fff com.apple.WebServices 1.1.1 (1.1.0) /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/WebServicesCore.framework/Versions/A/WebServicesCore 0x950d9000 - 0x9519ffff libcrypto.0.9.7.dylib /usr/lib/libcrypto.0.9.7.dylib 0x95e0a000 - 0x95e27fff com.apple.audio.SoundManager 3.9 /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/CarbonSound.framework/Versions/A/CarbonSound 0x962e6000 - 0x965befff com.apple.CoreGraphics 1.203.30 (???) /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/CoreGraphics.framework/Versions/A/CoreGraphics 0x968d0000 - 0x969b2fff libicucore.A.dylib /usr/lib/libicucore.A.dylib 0x96aa0000 - 0x96acefff libssl.0.9.7.dylib /usr/lib/libssl.0.9.7.dylib 0x96b50000 - 0x96bdffff ATS /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ATS.framework/Versions/A/ATS 0x96c00000 - 0x96c8cfff com.apple.ink.framework 101.1.4 (55.12) /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/Ink.framework/Versions/A/Ink 0x96e12000 - 0x96e25fff com.apple.speech.synthesis.framework 3.2 /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/SpeechSynthesis.framework/Versions/A/SpeechSynthesis Sincerely, Nathan Herring |
Send message Joined: 26 Aug 05 Posts: 164 |
We have similiar features for Windows and Linux. I've pinged our Mac guy about this. Can a process on MacOSX dump its own backtrace to stderr during a crash? ----- Rom BOINC Development Team, U.C. Berkeley My Blog |
Send message Joined: 29 Aug 05 Posts: 225 |
We have similiar features for Windows and Linux. I've pinged our Mac guy about this. For some crashes of software I get a "mail to apple" pop-up window. I have not seen this with BOINC, but, I am not sure that BOINC has ever crashed on OS-X yet. But there is some sort of crash system already available ... I wish I was smart enough to tell you were you hook into it ... |
Send message Joined: 7 Sep 05 Posts: 13 |
We have similiar features for Windows and Linux. I've pinged our Mac guy about this. Not exactly. You can mirror what the Apple crash reporter is doing. It connects to the mach exception port of the application and listens in. In the case where an fatal exception occurs, notification gets sent out the exception port and then the secondary application can record information about the process in its crashed state. You have to know a fair amount about Mach-O stuff to do it though, and I would highly suggest letting Apple do that work, and just worry about writing an interpreter for the logs they already generate. However, it can be done, to wit Microsoft Error Reporting for the Macintosh. The crash reporter writes a log in ~/Library/Logs/CrashReporter/application .crash.log for user processes, and in /Library/Logs/CrashReporter/application.crash.log for system processes. The Boinc manager for the OS X can simply inspect the CrashReporter directory for well known crash logs (like boinc.crash.log and project_majorver.minorver_platform.crash.log for the various binaries associated with currently attached projects, and send any new crash logs appended to those files back to the server (or process them and send them in whatever unified format you might have). -nh |
Copyright © 2025 University of California.
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License,
Version 1.2 or any later version published by the Free Software Foundation.