View Issue Details

IDProjectCategoryView StatusLast Update
0003170unrealircdpublic2015-07-25 13:29
Reportersyzop Assigned Tosyzop  
PrioritynormalSeverityminorReproducibilityalways
Status resolvedResolutionfixed 
OSWindowsOS VersionANY 
Product Version3.3-alpha0 
Fixed in Version3.4-beta3 
Summary0003170: Auto-bugreporting
DescriptionWhen UnrealIRCd crashes on windows (in GUI mode only?), consider auto-reporting the crash details to us. Of course, after the user has clicked some kind of 'send report' button.
Additional Informationcodemastr had this idea years ago

Don't know how easy or hard this would be, and if this would actually be a good idea. In general, we know that like 90% of the crashes are not reported to us and people then wonder why an issue still exists 2 years later.... :P
TagsNo tags attached.
3rd party modules

Activities

Bricker

2006-12-28 10:17

reporter   ~0012932

hmm, i always click cancle on those things, or dont get that msg. I'll test it out

syzop

2015-06-27 23:28

administrator   ~0018424

Last edited: 2015-06-27 23:29

bump

also consider not just for windows but *NIX as well

(if tty/interactive, then ask, otherwise do not ask of course :D)

--

on *NIX also check out where the core dumps go now that we changed all the paths.. I may have broken it (the ./unreal backtrace script).. probably did.

syzop

2015-07-12 18:13

administrator   ~0018478

Last edited: 2015-07-12 18:14

'./unreal backtrace' is now working again.
new directory structure broke it in two ways:
1. core is no longer in the 'root unrealircd directory'
2. the extra subdirectory broke things. eg: 1648263.secure.so... need to symlink that to the right chanmodes/secure.so or usermodes/secure.so

I fixed the second issue by adding changing the tmp/*.so format. no-sub-dir-modules are still like ECBE1CEC.m_umode2.so but for instance issecure is FEA69F0B.chanmodes.issecure.so. And then improve the crazy awk script to do the symlink stuff so the backtrace is useable.

As for the first issue.. I did a chdir(PERMDATADIR) for now, so it dumps core files in data/.... Hmmmmmmm... not sure what's a better place. tmp could be a place but if someone makes that a writable or even readable.. hmm. OTOH, yeah maybe we should just use tmp..... :)
.. and then the cleanup-on-boot thing shouldn't delete the whole of tmp/ but skip *core* :p

syzop

2015-07-12 18:28

administrator   ~0018479

done, using tmp now. in ./configure we already call it 'private tmp directory' anyway. so it's the users/maintainers fault if they do silly things.

syzop

2015-07-12 18:28

administrator   ~0018480

so this leaves the auto-report shit.. IOTW: what this issue is actually about..

syzop

2015-07-25 09:12

administrator   ~0018564

Initial version (*NIX only):
https://github.com/unrealircd/unrealircd/commit/2cb395216af5a2295fd4b3d5cf05219722ad8210
HTTPS instead of HTTP for reporting:
https://github.com/unrealircd/unrealircd/commit/fb0662f67cbb9ea24cc04d0ab218eba87f0652db

The way it works is that on-boot the unrealircd script runs the unrealircd binary a second time with -R to check if a crash report needs to be generated. If not, it just exits silently. This way all code is in C which can make this decision best. It's also ran in a separate process for safety, so if we crash or hang (reporting is synchronous) it's much less of a problem.

Now left:
1) Windows.. is going to be interesting
2) Cleanup code
3) Something with user preferences

syzop

2015-07-25 13:29

administrator   ~0018565

This is now done.

Maybe userpref will be done later. Should be very unusual of course, a crash, so could just ask each time.
Just maybe for devs like me & Heero or devs writing 3rd party modules not to be bothered.

Issue History

Date Modified Username Field Change
2006-12-28 10:05 syzop New Issue
2006-12-28 10:17 Bricker Note Added: 0012932
2007-04-19 04:24 stskeeps Status new => acknowledged
2015-06-27 23:28 syzop Note Added: 0018424
2015-06-27 23:28 syzop View Status public => private
2015-06-27 23:29 syzop Note Edited: 0018424
2015-07-12 18:13 syzop Note Added: 0018478
2015-07-12 18:14 syzop Note Edited: 0018478
2015-07-12 18:14 syzop Note Edited: 0018478
2015-07-12 18:28 syzop Note Added: 0018479
2015-07-12 18:28 syzop Note Added: 0018480
2015-07-25 09:08 syzop View Status private => public
2015-07-25 09:12 syzop Note Added: 0018564
2015-07-25 13:29 syzop Note Added: 0018565
2015-07-25 13:29 syzop Status acknowledged => resolved
2015-07-25 13:29 syzop Fixed in Version => 3.4-beta3
2015-07-25 13:29 syzop Resolution open => fixed
2015-07-25 13:29 syzop Assigned To => syzop