database/sql errors should be trapped... and logging errors in the db is not really ideal [what if db becomes corrupted as a result of an error? hosed.]. Is there no plain text logging going on anywhere?
also since my installation is essentially bonked right now, installing a package is a non option... trying to do some investigation into what caused the failure.
500s will actually be logged by your web server, the cause of the error (aka the exception that got thrown) will either be logged in the web server as well or most likely in either the Windows event system or the umbracoLog table as Dan and kipusoep have mentioned. Umbraco does a pretty good job of catching these errors and writing them to the log. Using a database to log system messages is a well-proven technique and overall superior to a file based logging mechanism. You can do a lot of things to make sure that the db is redundant, e.g. mirroring/replication/using a db cluster and whatnot. And if your db is corrupted and you don't have a backup then not be able to access the logs is probably the least of your problems. ;)
Do you have access to your db at the moment so you can look at the umbracoLog table?
Like Sascha says; logging to DB is superior. And I don't know how you would get your DB corrupted ;-) I've never experienced it...
We create backups every night, you should too :-) And use the Windows Event Viewer to track down asp.net web-errors:
Create a custom view with the following filter: Source should be "ASP.NET 2.0.50727.0, ASP.NET 4.0.30319.0" if you have .NET 4 installed, else only "ASP.NET 2.0.50727.0".
If logging is import to you then I'd urge you to look at ELMAH.
ELMAH (Error Logging Modules and Handlers) is an application-wide error logging facility that is completely pluggable. It can be dynamically added to a running ASP.NET web application, or even all ASP.NET web applications on a machine, without any need for re-compilation or re-deployment.
It integrates well with Umbraco, is free and is very easy to use. It can be configured to log to all sorts of data-sources, from databases (SQL to VistaDB) to XML files or even in memory. It includes an integrated viewer, too.
This is still in dev [our first assessment of umbraco], of course we
have backups. Seems odd using 'windows event viewer' to debug
application specific/programmatic issues however...
I think that
logging to the db is less accessible. Logging to xml or a flat file
would be better [imo], for many reasons, not the least of which is you
completely bypass queries and immediately have access to information
from any of the powerful text editors available [Including more advanced
and very powerful linux based tools/languages].
I've been
writing software in both windows and linux/unix environments for some of
the largest companies on the planet for well over a decade and I have
experienced numerous database corruptions [it does happen,
admittedly less so as time progresses here...] - even file systems
become corrupt, it's naive to think that data on those filesystems is
immune to corruption.
If the application cannot access the database where does it log that error message to?
DB
logging is fine for some information access, metric centric data mining
etc... but application failures should be trapped in plain text format.
All arguable personal philosophy aside, I gather the the answer
is "Umbraco logs only to a db, no flat file logging". So, I'll add that
since I have the source code here!
Thank you for your feedback
however! I'm impressed with an open source system running in a windows
environment that implements python!
Where does umbraco log errors? 500's, etc?
Not finding anything in here about where umbraco dumps error messages...
I have a catostrophic fila right now... 500 in admin and site and can't seem to locate any useful information about what's going on...
Thanks
Look in your umbracoLog table. Or better still get the F.A.L.M housekeeping package and use the log-viewer.
Can't you access Windows' event viewer? I don't think Umbraco log's 5xx errors...
where's my :ugh smiley?
database/sql errors should be trapped... and logging errors in the db is not really ideal [what if db becomes corrupted as a result of an error? hosed.]. Is there no plain text logging going on anywhere?
also since my installation is essentially bonked right now, installing a package is a non option... trying to do some investigation into what caused the failure.
500s will actually be logged by your web server, the cause of the error (aka the exception that got thrown) will either be logged in the web server as well or most likely in either the Windows event system or the umbracoLog table as Dan and kipusoep have mentioned. Umbraco does a pretty good job of catching these errors and writing them to the log. Using a database to log system messages is a well-proven technique and overall superior to a file based logging mechanism. You can do a lot of things to make sure that the db is redundant, e.g. mirroring/replication/using a db cluster and whatnot. And if your db is corrupted and you don't have a backup then not be able to access the logs is probably the least of your problems. ;)
Do you have access to your db at the moment so you can look at the umbracoLog table?
Like Sascha says; logging to DB is superior. And I don't know how you would get your DB corrupted ;-) I've never experienced it...
We create backups every night, you should too :-) And use the Windows Event Viewer to track down asp.net web-errors:
Create a custom view with the following filter: Source should be "ASP.NET 2.0.50727.0, ASP.NET 4.0.30319.0" if you have .NET 4 installed, else only "ASP.NET 2.0.50727.0".
If logging is import to you then I'd urge you to look at ELMAH.
It integrates well with Umbraco, is free and is very easy to use. It can be configured to log to all sorts of data-sources, from databases (SQL to VistaDB) to XML files or even in memory. It includes an integrated viewer, too.
This is still in dev [our first assessment of umbraco], of course we have backups. Seems odd using 'windows event viewer' to debug application specific/programmatic issues however...
I think that logging to the db is less accessible. Logging to xml or a flat file would be better [imo], for many reasons, not the least of which is you completely bypass queries and immediately have access to information from any of the powerful text editors available [Including more advanced and very powerful linux based tools/languages].
I've been writing software in both windows and linux/unix environments for some of the largest companies on the planet for well over a decade and I have experienced numerous database corruptions [it does happen, admittedly less so as time progresses here...] - even file systems become corrupt, it's naive to think that data on those filesystems is immune to corruption.
If the application cannot access the database where does it log that error message to?
DB logging is fine for some information access, metric centric data mining etc... but application failures should be trapped in plain text format.
All arguable personal philosophy aside, I gather the the answer is "Umbraco logs only to a db, no flat file logging". So, I'll add that since I have the source code here!
Thank you for your feedback however! I'm impressed with an open source system running in a windows environment that implements python!
Cheers.
is working on a reply...