• Views
  • Iteration Report
  • My Iteration Report
  •  
OMERO.server
  • Login
  • Help/Guide
  • About Trac
  • Preferences
  • Wiki
  • Timeline
  • Roadmap
  • Browse Source
  • View Tickets
  • Search

Context Navigation

  • ← Previous Ticket
  • Next Ticket →

Ticket #860 (new story)

Opened 8 months ago

Last modified 8 months ago

Add ServerErrorEvent subsystem for notification of internal errors

Reported by: jmoore Owned by: jmoore
Priority: critical Milestone: 3.0-Beta4
Component: Services Version: 3.0-M1
Keywords: errors, exceptions, logging, asynchrnous Cc: atarkowska, callan

Description

With more asynchronous logic in the server -- full text search processing, job processing, etc. -- it's difficult for server adminstrators to find problems when they only show up in the rather bloated logs.

All asynchronous processing subsystems should start raising a ServerErrorEvent in addition to logging an exception. The event can be handled by multiple listeners. E.g.:

  • A simple LoggingServerErrorEventListener can write a special log file
  • A EmailingServerErrorEventListener can send an email to a specified admin (emails are disabled if the configuration property is set to "", e.g. omero.servererror.email=
  • A WebAdminServerErrorEventListener could pass the information on to the WebAdmin console which administrators could check periodically.

Events which are of importance include:

  • CorruptedFileServerError - When the sha1 of a Pixels or an OriginalFile do not match the value in the DB
  • LuceneLockedServerError - some forms of exceptions can leave Lucene in a locked state, making search mostly unusable.
  • NoJobProcessorServerError - if all jobs are failling/not being accepted, then JobHandler is essentially useless. The problem may be that all compute nodes are down.

Perhaps an "error level" can determine, for example, whether or not an email will be sent.

Change History

Changed 8 months ago by jmoore

  • owner changed from josh to jmoore
  • priority changed from minor to critical
  • milestone changed from Future to 3.0-Beta4
Note: See TracTickets for help on using tickets.

Download in other formats:

  • Comma-delimited Text
  • Tab-delimited Text
  • RSS Feed

Trac Powered

Powered by Trac 0.11
By Edgewall Software.

Visit the Trac open source project at
http://trac.edgewall.org/