Aug 26, 2019

Top 5 Tips on Logging in Java

Source - Pexels
One of the first decisions you have to make when building a website is which programming language you want to use. With all of the different options on the market, selecting the right programming language can be difficult. For years, developers have relied on the power of Java to build and power their websites. This language is both easy to use and very effective.

Did you realize the websites for LinkedIn, Indeed and Ali Express were all built using Java? If you are considering using this programming language, you need to consider a few important factors. If you are using Java to create a web-based or mobile application, monitoring runtime data is crucial. While some people rely on logging as a service, others prefer to do this manually.

Regardless of what method you use to monitor this data, you need to focus on logging as much information as you can. The following are some of the things you need to focus on when logging in Java.

1. Be Careful When Logging Sensitive Information

One of the biggest misconceptions most people have about logging is that they need to get as much information as possible. While having usable data is important, there are certain things you don’t need to store or log on your application. Logging things like a user’s login credentials or financial information is a horrible idea.

Most developers fail to realize that their plain text log files will be processed by a number of unsecured systems. This means that this sensitive information will be at risk. Not only is the practice of logging sensitive information negligent, it is also heavily regulated. This means that if you do not take the proper precautions to protect this data, you may be at risk of being fined.

2. Excessive Logging Creates Problems

Are you looking for a way to keep your website or application fast and responsive? If so, then you need to avoid excessive logging. Taking the time to figure out what data you want to monitor is crucial. The more files you are logging, the slower your site or application will ultimately get.

Not only will excessive logging lead to slower computing speeds, it can make it hard for you to actually read what a log file says. If there are too many log messages, you will be unable to pick out the ones that actually matter. You should really only be logging information that affects either the functionality of your app or the user’s experience.

By being selective with the data you are using, you can make finding and fixing problems much easier. Also, a faster app or website will be far more popular with consumers. The time you invest in cutting down on excessive logging will be worth it in the long run.

3. Making Sense of Cryptic Log Messages

When you start to parse the log files created by your application or website, you will need to view the details to make sense of them. One of the biggest mistakes beginner programmers make is failing to include enough information in these files. If these log messages are vague or cryptic, you will have a hard time making sense of them.

This is why you need to focus on putting things like timestamps, thread name, class name and log level is crucial. This information will act as clues when trying to figure out what is wrong with your app. The last thing you want is for your app to give you log messages you can’t understand.

One of the best ways to ensure you have no problem understanding what a log means is by using workflow rules. These if/then statements can create a predictable outcome and minimize problems during the development and deployment process. If you are curious about how to use this tool, you can find more information on workflow rules on DaniWeb crm's help pages here.

4. Incorrect Log Levels Can Create Confusion

Failing to create adequate log levels will lead to either a flood of unimportant data or the missing of significant events within your app or website’s infrastructure. You need to view choosing the right log level for your system as a priority.

For most logging frameworks, you can use terms like fatal, warn, debug or trace to label various log files. Ideally, you want to name these levels in a way that gives you information about how severe they are. Trace is generally the lowest log level, while fatal is the most serious. With these labels, you should be able to find out how severe the issues you are dealing with really are.

Source - Pexels


5. Ignoring Your Logs is a Bad Idea

The worst thing a developer can do is to work hard to create an adequate and detailed logging system  only to ignore the information it provides. You need to make a habit of looking at these files on a daily basis to ensure everything is working efficiently. Staying on top of the error logs can help you keep your app more dependable and functional.

Keeping Your Program Running

All of the time and effort you invest in logging will be worth it. By keeping track of how well an app is performing, you can detect issues before any real damage is done.

Aug 1, 2019

PR_CONNECT_RESET_ERROR connecting to Windows IIS web servers in Firefox only

I had a strange issue today at my day job that shall not be named. We have a test environment that our clients connect to that is running Windows IIS. Out of the blue, one of our clients said that in Firefox they couldn't connect to the test environment website, but all other browsers worked fine.

When you would connect to the site in Firefox, you would get the below error:


Secure Connection Failed

An error occurred during a connection to <website name> PR_CONNECT_RESET_ERROR



  • The page you are trying to view cannot be shown because the authenticity of the received data could not be verified.
  • Please contact the website owners to inform them of this problem.

None of the other servers in our other environments had this issue.

Well, after checking TLS settings on servers that didn't have the issue and comparing them to the servers that did have the issue, I figured it out.

Using IIS Crypto, I found that these servers had SHA disabled. Once I checked the box to enable it, and rebooted the servers the issue went away.


Apparently Firefox doesn't support SHA 256 and above yet... Seems like they would though right?

Anyway, that fixed the issue for us. If you know of another way to fix this, let us know in the comment!



Twitter Delicious Facebook Digg Stumbleupon Favorites More

 
Design by Free WordPress Themes | Bloggerized by Lasantha - Premium Blogger Themes | stopping spam