Looking for an software activity logger

Hello all,

I have a rather poorly behaving Windows (v7) program that crashes (.net crash) once or twice a day. Because the crashes occur during different activities (but same error), I am looking for some sort of correlation or consistent factor. I am wondering if it is a memory leak, if the crashes occur after a certain number of key presses or other activities.

Is there a tool that can monitor and record the activity of a specific Windows program and give me some revealing activity data?

Thank you

BTW, all the usual suspects have been ruled out, such as,
- The right version of the .Net framework
- All other necessary updates

- This is a GA testing thing... I do not have access to the source code.
- This software is in active use so not really a candidate for an automated software testing
- A crash appear to occur after (an educated guess) about 100 - 200 "operations".
S ConnellyTechnical WriterAsked:
Who is Participating?

Improve company productivity with a Business Account.Sign Up

JohnConnect With a Mentor Business Consultant (Owner)Commented:
I did read your problem very carefully. My suggestion after removing your program was to consider if your Windows 7 installation was OK.

If you are sure the installation works fine, then you need to perhaps put a debugger or debugging statements in the program code.
Janusz CzopowikConnect With a Mentor Commented:
Are you using MS Visual Studio as development environment?
If yes, start program and use VS debugger to attach to process.
Make sure that JIT is turned ON.
You can also use MS public symbols by setting symbols source to http://referencesource.microsoft.com/symbols
S ConnellyTechnical WriterAuthor Commented:
>Are you using MS Visual Studio as development environment?

No, I do not have MS Visual Studio installed on this machine. This software is installed on a basic Windows 7 (64 bit) computer. The operator is not a programmer and it would be inappropriate to install anything more than some form of activity logger that can record activity specifically related to this Windows app.

I have looked at several key loggers but none have the ability to focus on one problem.

This issue has been plaguing me for weeks and the Windows system logs say the same thing every time... I need to gather more information in a more unorthodox way.
Free Tool: SSL Checker

Scans your site and returns information about your SSL implementation and certificate. Helpful for debugging and validating your SSL configuration.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

JohnConnect With a Mentor Business Consultant (Owner)Commented:
Open Windows 7 Reliability Monitor and see what it says. This should show you (a) the frequency of error and (b) whether it is always the same error (or different errors looking the same). It will also tell you what specific program is failing. It does not tell you why it failed although it might inform the people who receive WER reports.
S ConnellyTechnical WriterAuthor Commented:
Hello John,

Cool idea. I have never looked at the Windows Reliability Monitor until now.
The only errors on this computer are all from my program. :(

But the only consistency is that mscorlib appears at the center of this failure, each time.

It's cool to look at but it won't help me gather anything more than the app logs already record.  Expect perhaps, I have learned that my program is keeping this computer from achieving a 10 reliability rating. :(

But still, thanks for this!
KimputerConnect With a Mentor Commented:
Do you get a detailed .net error screen (with the option, more details, continue, quit )
If so, sometimes these can already point to something, even if you don't have the source code. Unfold more information and send error or screenshot.
S ConnellyTechnical WriterAuthor Commented:
>Do you get a detailed .net error screen (with the option, more details, continue, quit )

Do you mean at the point of failure?

No, according to user. Just your typical "xxx app has stopped working" error.

However, just today (this user is great for getting screen caps)... the error message was a bit different. It stated: "System.Runtime.InteropServices.COMException (0x80070008): Not enough storage is available to process this command"

That is more revealing than the other errors...suggests possible memory fragmentation. ??
JohnConnect With a Mentor Business Consultant (Owner)Commented:
Can you install .NET Framework and reinstall it?   That might help.

Use Programs and Features, Windows Features to turn off .NET and then use Programs and Features to uninstall.

Then turn on .NET and reinstall with Windows Updates.

Make sure you get Recommended Updates along the way.

Use .NET Framework Verifier to see if elements are not working.

S ConnellyTechnical WriterAuthor Commented:
>Use .NET Framework Verifier to see if elements are not working.

Thanks for that. Very useful tool.
I have confirmed that there are no problems detected with the .NET framework v4.5.1.

>Can you install .NET Framework and reinstall it?   That might help.

That was already done.

I think that if I can just find some form of system logger that can target one program, I might see a pattern to the crashes. There must be something out there that can do that?

Well... there are tools but everyone that I have found is designed to watch employees over a corporate network. Way too much for my requirements. :(

Then I broadened my research to 'simple' key loggers and discovered that many of them, according to their feature list, might actually do the job. Problem is... how can I trust these? I am not about to install a key logger made by some unknown company off the Interweeb!  The next step is to look for reputable companies and reviews.
S ConnellyTechnical WriterAuthor Commented:
Okay, I am testing "All In One Keylogger" http://www.relytec.com

It seems to have basic filtering, I can create white lists to the program in focus for text and screen capture recording. Pretty cool.

I am still willing to consider other solutions or ideas.

Actually, while you do all the difficult research and work, did you actually factor in that the error coulde be in the source code, and even if you find out more (for instance about who/what/why), that you're still not much closer to a solution (since you never mentioned contacting the original developer, I'm assuming you won't, even after you find out more information).
Janusz CzopowikCommented:
I agree with Kimputer.
I would still prefer using VS environment if possible. You can set up remote debugging session on affected computer.
Another way would be testing application in question on another machine with debugging environment.
I do not think any key logger is going to tell you what is wrong.
S ConnellyTechnical WriterAuthor Commented:
>did you actually factor in that the error coulde be in the source code

Of course.

But also, it could be the specific environment or an obscure .Net problem.

Either way, the purpose of the key logger to to determine whether or not a pattern exists. It isn't going to magically point to the cause of the problem, however, if a pattern emerges, it will..uh... er... "may" help to potentially narrow down the cause.

It is just a 'better than nothing' diagnostic step because no other apparent cause has been found. This is one of those weird errors on one-off products that cannot be replicated in the lab.

Fortunately, the customer is not really concerned but the desire for quality and curiosity are driving this intense effort to find a solution.
JohnBusiness Consultant (Owner)Commented:
If you uninstall the problem software, does Windows 7 behave properly?

Try a couple of other avenues for Windows 7.

1. Run System File Checker. Run SFC /SCANNOW and allow to complete. Restart and check your problem again.

2. If no luck, consider running a Windows 7 Repair Install. Here is a good article with screenshots to do that.


Then if all your efforts fail, then consider backing up and re-installing Windows 7. If you do this, make sure all software EXCEPT the problem software has been installed and Windows is working very well. Then try the problem software.
S ConnellyTechnical WriterAuthor Commented:
Hello John,

I think you may have misunderstood the nature of this problem. :)

There are no issues with the Windows 7 installation. It is only our program that crashes (maybe once per day and always after running for several hours).
S ConnellyTechnical WriterAuthor Commented:
Hello John,

Thanks. The debugging code was already present but it never revealed anything.

Update: I was able to narrow down the issue to one particular part of the code (a built-in mini text editor).

The 'solution' was to disable this functionality and call up an external text editor. No crashes since doing this.

Thanks for your assistance.
JohnBusiness Consultant (Owner)Commented:
@sconnell - Thank you and I was happy to help.
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.