Closed Bug 849120 Opened 7 years ago Closed 7 years ago

change "send error to error reporter" from forking to running a process

Categories

(bugzilla.mozilla.org :: General, defect)

Production
x86
macOS
defect
Not set

Tracking

()

RESOLVED FIXED

People

(Reporter: glob, Assigned: glob)

Details

Attachments

(1 file)

currently when bmo sends its error report to its error reporting server (currently arecibo), it forks and detaches to deliver the message in the background.

after bmo was upgraded to 4.2 (along with rhel5 -> rhel6), it looks like this has resulted in a lot of zombie httpd processes.

we should change it to build the payload and serialise it (to json or whatever), and then run a separate script which sends it to arecibo/sentry (either piping the payload to it, or saving to the temp directory and passing the filename as an argument).
i've disabled arecibo on production until this is sorted.
the syslog entries will now contain a full stacktrace.
Attached patch patch v1Splinter Review
Attachment #724826 - Flags: review?(dkl)
Comment on attachment 724826 [details] [diff] [review]
patch v1

Review of attachment 724826 [details] [diff] [review]:
-----------------------------------------------------------------

Looks good. I was not able to actually test sending of data to the Arecibo instance but everything else seemed to work fine. r=dkl

::: arecibo.pl
@@ +21,5 @@
> +use lib "$Bin/lib";
> +
> +use Bugzilla;
> +use File::Slurp;
> +use POSIX qw(setsid nice);

Do not see nice() being used. In the old code, you were using nice(19).
Attachment #724826 - Flags: review?(dkl) → review+
committed a nicer patch:

Committing to: bzr+ssh://bjones%40mozilla.com@bzr.mozilla.org/bmo/4.2/
added arecibo.pl
modified Bugzilla/Arecibo.pm
modified Bugzilla/Install/Filesystem.pm
Committed revision 8684.
Status: NEW → RESOLVED
Closed: 7 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.