Logahawk Logo
Logging should be easy - Easy to code and easy to read
Why the name "Logahawk"?
Trees are cut down to get "logs", and in the olden days axes were used to cut down trees. A type of axe designed by Native Americans is the Tomahawk. While not used for cutting down wood, the thought chain holds pretty well, hence the name Logahawk.
Why did you create such a library?
I have found logs to be an invaluable tool in the creation and maintenance of every kind of application. But no logging frameworks I've ever used is simple for developers to use. So I wrote wrappers around the logging frameworks to make them easier to use. Prior to Logahawk I've written at least four different wrappers. The wrappers have always been well received by other developers and stakeholders, and made logging easy and ubiquitous. Our logs became more comprehensive and useful. With ever iteration I've evolved and enhanced the concept, making it more flexible and easier to use. Logahawk is the culmination of all that effort.
Why did you choose the Apache License?
For two main reasons. The first reason is that log4j, arguably the most popular logging framework, is licensed under the Apache License, and hence it makes licensing a non-issue for projects that are already using log4j. The second reason is that logging is more common in high-availability and mission-critical applications, which are often custom solutions and hence proprietary -- I did not want to make it difficult for those projects to use Logahawk.
How reliable/stable is Logahawk?
Very. The logging wrappers that Logahawk is based on are use in mission-critical, high-availability systems. Logahawk was designed to be used in those same types of applications, where logs are not just after-thoughts, they are the part of the very basic design.
What are the future plans for Logahawk?
More unit tests, more formatters, more listeners, etc. Currently there are no major plans or changes to the API.
Logahawk doesn't appear to be updated very often...
That's because its stable and complete. I've implemented all of the capabilities that I can conceive of. The updates I do make are usually new ideas that come out of the blue or to meet the new needs of other projects with unique needs. Logahawk isn't abandoned, its simple stable and complete.
Where is the configuration file? Why is there no configuration file?
Logahawk uses other logging frameworks to handle the actual logging so it keeps those frameworksfile-based configuration. There is no need for Logahawk to have yet another configuration file.
Logahawk adds too much overhead! (Or Logahawk is slow!)

(Note: I've never received any word that Logahawk is actually slow, but I'll address the potential concern anyways.)

Yes, Logahawk adds overhead, but the overhead is a trade-off to gain a better view into the system. In fault intolerant systems it is usually much more valuable to have a good grasp on what is happening then to worry about the few milliseconds lost in producing that better view. I personally have never encountered a situation where the overhead out-weights the gains.

Further, Logahawk is designed to centralize logging activities, so that any inefficiencies can be localized and optimized within the logging framework instead of scattered across the the application. That being said I am constantly on the look out for inefficiencies in Logahawk's implementation.

If performance is a problem the best option is to remove unnecessary formatters, even using a separate Logger instance that has only the formatters you need. Everything in Logahawk is an interface so you can replace any of component with your finely tuned implementations.

I see unrecognized files in the root, what are they?
IntelliJ project files. (See the next question.)
What development environment/IDE do you use?

I use IntelliJ, because I find it to be superior to Eclipse and NetBeans. Both Eclipse and NetBeans are good products, but in my opinion IntelliJ is better for Java development.

My use of IntelliJ does not preclude using Eclipse, NetBeans, or anything else. Logahawk's source does not depend on the IntelliJ project files.