2
votes

I have a legacy DNN site, and an error shows up at the top of the page telling me that one of the modules failed to load. That's wonderful, but that doesn't tell me a damned thing about why the module didn't load. Does anyone unfortunate enough to work with DotNetNuke know how to view a stack trace when a module explodes? I keep looking for a "No, seriously..." button, and I haven't found one yet.

Cheers,

-Charles

2
So you really think DotNetNuke should display stack traces to everyone that visits the site? They don't for security purposes. If you log in as Admin or Host, you'll see a proper error message and full stack traces in the Event Log. - EfficionDave
No... Just a little annoyed that I can't get to it. I get an error when trying to login - the fact that it's catch-22 for something so trivial sorta pissed me off, but I'm better now :) - Charles

2 Answers

4
votes

When you aren't logged in, that's the only message you're going to see. I think you need to be a host user to see the error message in-line, in place of the module, but as an admin user you can go to the Event Viewer (or Log Viewer, depending on your version of DNN) page in the Admin menu.

However, since you can't login, you'll need to look at that table in the database, since you can't access the page. That table is called EventLog (there will be a prefix to that name if your site uses an object qualifier).

To start with, try a query like this:

SELECT * FROM EventLog ORDER BY LogCreateDate DESC

You're going to want to look mostly at the LogProperties column, which has XML about the event. One of the nodes will be a stack trace.

Hope that helps.

0
votes

There is an event viewer in the admin or host menu.