v3.2.3 released

10 Jun 2013

This is the third maintenance update for v3.2. The release notes are here. There are no special upgrade instructions, for the server do it from admin/status page and for clients from Help menu.

Along with minor bug fixes there are several additions and corrections worth noting:

  • It is now possible to use customized _id generation with MongoDB. The user manual is updated with details for the implementor (see 'Advanced setup').
  • Creation of PK's with relational databases is also exposed for custom implementations. The user manual is updated with details for the implementor (see 'Advanced setup').
  • We have removed management of MongoDB indexes from admin interface. It proved to be confusing, especially in the context of default indexes we gave during installation. In most cases users will need to pick their own compound indexes and compromise between cost of memory resources and keeping clients happy with decent query speeds. There are some explanations in details in user manual.
  • Clients now have customized query option for daily spread distributions and some improvements to drill down options.
    • Short update in regards to upcoming v4. Added recently the capability to import and index raw text files in any format. There is some regular expressions wizardry added to admin and we will also let clients parse any textual logs to utilize existing visual tools. All this shall give us some means to work with offline and legacy systems. The beta is here. It's relatively stable and you're most welcome to experiment and give us your feedback.


      Fork into four

      06 May 2013

      We are happy to announce first public beta for v4. Release is planned for the second half of this year. There are no special installation instructions except that clients v3 are not fully compatible with server v4 and vice versa. Current stable v3 will continue as usual until eventually replaced by v4.

      So, what have we got to offer and why there is a major version increment?

      • Syslog - a brand new face in town. We integrated a fully featured syslog server into logFaces. Although syslog is a completely different logging system to what we used to, there will be almost zero impact for the end user. All you have to do is to enable the receivers in admin, direct your syslog sources to our ports and the logs will propagate as usual. It supports structured syslog formats, so if your app will transmit the application name and process ID, this information will be available in clients. Otherwise, plain vanilla syslog messages will be found under domain named 'appliances' with all the facilities applicable. On clients you will be able to do everything in the same way - queries, filters, monitoring, etc.

        Syslog brings with it another nice perk - the Windows Event Log can be easily forwarded by means of syslog bridges which are in plenty around. We tried eventlog-to-syslog and it worked like a charm. It actually means that you can hook all your Windows machines and stream the events to logFaces for real-time monitoring or permanent storage.

      • Amount of MDC mappings is doubled. We have received many requests regarding this limitation. So now there are 10 names which can be mapped. Unfortunately this will require schema upgrade in relational databases, but it should be trivial to add several columns. MongoDB users are not affected for obvious reasons.

      • Basic HTTP authentication in admin was replaced with proper login. If you are using LDAP for authentication, you may want to delegate this process to your own directory. If you don't, the password is still kept obfuscated on local disk.


      Logback appender update

      25 Apr 2013

      There is an urgent fix in logback appender. If you are using logback as your logging framework, make sure to take the new jar and replace it in your apps. The problem was related to a wrong thread name emitted from appender and incorrect MDC values.


      v3.2.2 released

      22 Apr 2013

      Today we post the second maintenance update for v3.2. It contains primarily bug fixes, minor improvements and left overs from the previous updates. Some of the bugs are quite annoying, so if you stumbled upon some of them, don't hesitate to get the update. There are no special notes for the upgrade, for the server do it from admin/status page and for clients from Help menu. The release notes are here.


      v3.2.1 released

      04 Mar 2013

      We finally release v3.2, it looks stable and ready to roll. Along with new features described in the previous post, there are quite some bug fixes and improvements which you will find in release notes.

      Although it's a version increment the upgrade should be fairly simple as long as you are using v3.1, the instructions are here.

      We have also added a bunch of short video tips to cover some of the new features. This list will grow as we find more interesting tips to share with you.


      v3.2 beta

      07 Jan 2013

      Happy New Year everyone!
      We start this year with a bunch of new stuff and looking forward for adding even more ideas during the year. In v3.2, which will be our base line for the year, we are adding some significant improvements, but before it goes live, we need to make sure it meets the user.

      Streaming query results. If you ever used logFaces over the public internet or VPN, you might have noticed that large result sets are slow to get to the client even with a well tuned database. It may get particularly painful with huge queries containing exception dumps, which is often what people do. In this release we addressed this issue and managed to improve the speed by the magnitude, sometime more. The slower the client-server connection, the more vivid will be this improvement. Now, instead of paging the result sets and hitting the server on every page, we do streaming which takes a single server hit and delivers everything to the client in one shot. The stream may get compressed. Plus we bypass many conversions while streaming simple JSON text. Yet another plus is that we can now lazy load the exception dumps. All this makes a significant performance boost for far remote users.

      Tagging log events. This feature is so cool, I don't know why we didn't nail it earlier. Tags add domain specific indications to a dull technical log stream. You create a tag by giving it a short friendly name, colour and matching criteria. Logs matching the tag criteria get tagged before they get displayed. The criteria is the same bunch of rules we use in queries and filters, nothing new here. Tags are a very powerful analytical tool - they participate in all filters we already have plus the new tools we bring now - read on.

      Slicing log views by categories. This is a new face. When you look at a bunch of log statements, the Slices will give you a quantitative correlation picture. It answers a question 'how much of what stuff is in there?' and it will let you easily pin point the most representative offenders or contributors by category. Particularly interesting is the usage of tags.

      Spreading log views in time. We already have so called distributions where you can get a time line of log statements grouped by severity levels. Adding now is the capability to time line any active view by any category, including our beloved tags! This tool answers the question 'when have this happened and who are the contributors?'. Combining slices and time lines you will be able to find some interesting things in your data.


      Version 3.1.5 released

      12 Nov 2012

      • It is now possible to use MongoDB TTL collections introduced with MongoDB v2.2. TTL collections are great for storing log data because management of storage gets automated by database which simplifies things tremendously and makes it more efficient.

        We had to convert the 'time' column in schema from 'long' to 'Date' in order to be able to utilize the TTL index. If you want to use TTL with your existing database, here you will the instructions on how to convert the schema.

        If you don't need the TTL, this change is transparent for you, nothing needs to be done, it is still safe to update, the schema is backward compatible.

      • Client has some minor updates in regards to combo boxes in criteria filters. We have added "auto-complete" so that when there is a huge list of options to chose from, you will be prompted to choose one while typing. Also, there was a glitch on some Linux distributions with displaying SWT combo boxes, fixed as well.
      • Java appenders are improved as to ensure that the internal queue gets flushed to the server when appender shuts down. Not having this would have resulted in data loss if application rapidly goes down while appender holds some of the log statements in its transmitting queue. Now we ensure that the queue is transmitted to the server before yielding control to the calling thread trying to close the appender.

      How about some PHP faces?

      03 Oct 2012

      Somehow it slipped everyones attention that log4php™ has graduated from the Apache sandbox this year and is now officially listed as part of Apache Logging Services family. These are very good news and we gave it a try.

      It works handsomely with logFaces, no adaptation is required, no special appenders, no special rules. Simple. Intuitive. Right to the point piece of software. All you need to do is to twitch its configuration and you are ready to face the logs from your php projects.

      There is an out of the box socket appender which can be configured for either TCP or UDP transports. We have updated the user manual with configuration examples. Give it a try and let us know what you think.


      Version 3.1.4 released

      10 Sep 2012

      We are happy to bring you a new update with many improvements. Being mostly about client user interface, this update has some important fixes we did on the server side also. Look into release notes for more details.

      There are no special update notes, use server admin status page to download and install the update pack, and on client use "Help/Check for updates" menu to install new plugins.

      Here is a brief summary of notable changes:

      • We have completely redesigned the way you make queries in client. Now all queries are based on criteria filters, just like those in real-time perspectives, this brings more capabilities and are more consistent with overall design. Your existing queries are automatically converted to a new format.
      • There is a new form of query - "Fast Fetch". This is to avoid defining and saving all parameters, but gets right into the data. Now if you want to get something out of the database real quick, you don't have define all the stuff - just select filters and hit a button to get the data.
      • There are lots of new context menus throughout the data tables and views to allow instant creation of queries and perspectives. It is now possible to "follow" particular events by simply pointing to those which are already in the data tables. If you see something of interest you can now "fetch identical" events in certain time ranges. Message and Exception views now have context menus as well to allow fast access to perspectives and historical data. Clipboard copies are improved, it is now possible to copy content of individual columns in addition to formatted and value-paired lists.
      • All views now have a gentle touch of colour, some with the context of the data it shows. It looks a bit happier now.
      • Server admins can now easily clone existing reports and triggers. Very handy.
      • Email subjects can now be customized with ${var} notation to create a more descriptive subjects. So if you use notifications a lot you should find this useful.

      Maintenance build #2209

      09 Jul 2012

      There is a new build available fixing some urgent problems detected in v3.1.3. All problems are on server side, to update go to admin status page and install the fixes. Here is the detailed list:

      • Sometimes the TCP receiver would unexpectedly shutdown and render server unavailable to appenders until restarted. The problem is likely related to underlying network infrastructure or leak of resources (file handles); we made sure that receiver never shuts down and tries to accept connection hoping that problem would go away eventually. We have also added detailed exception dumps to know what is the cause.
      • Appenders needed to escape some more illegal characters, this caused some log events go into the cosmos. It probably happened when binary data was logged.
      • Somehow the latest API got broken in previous release, an embarrassing glitch, now fixed.
      • The database backup script fixed, wasn't working as expected.

      Known issues in v3.1.3

      05 Jul 2012

      We were closed for the vacation in June while several issues got piled up and stay unresolved. Here you will find the detailed description and workarounds. Apologies for any inconvenience caused, the fixes will follow ASAP.


      v3.1.3 maintenance release

      19 May 2012

      This update brings exciting networking features, important bug fixes and a bunch of improvements. See release notes for the details. So, what's new?

      • Pairing. Up until now multiple logFaces nodes could share single database, but getting the real-time stream required switching between nodes, which is not so cool. Pairing introduces single point of access to all clients and will consolidate everything through one single node we call front end. See this diagram for more details.. Why would you want to have several nodes in the first place? Two obvious reasons - a) to split the load; b) to provide fail-over. If these are important to you, then you should find pairing very useful.
      • Binding. Now it's possible to bind external and internal sockets to a particular address. This is useful when computer has several network cards and you want to do physical separation of the networks by binding clients and appenders to different interfaces.
      • SSL. We have finally added SSL transport for client connections. This is particularly useful when accessing the server from outside of the organization. Please note that we don't allow self signed certificates, so in order to enable the SSL you will need to obtain or use existing SSL certificate issued by proper trusted CA. There are instructions in user manual how to enable server for the SSL transport.
      • Ajax. Admin console is improved with background Ajax calls in order to prevent annoying page flickering. But the most important is that status page can now be seen with real-time updates without refreshing the content.

      v3.1.2 maintenance release

      09 Apr 2012

      This is the second maintenance release for v3.1, feel free to download.

      • Starting from this release, the server gets equipped with auto-updates mechanism. No more manual downloads and installations. Just go to admin/status page and check for the updates. Once available, the server will download the update pack, install it and restart itself. Magic.
      • Clients get new little feature - query distributions. Just like displaying daily distributions, it is now possible to display distribution of the queries before actually fetching all the data. Click here to see how it works. If you used daily distributions before and found it useful, the distributions of queries will nicely complement that.
      • Windows installers fixed to work with Java7
      • LDAP mapping extended to cover wider filter of user and group classes

      Clients for MAC OS X

      05 Mar 2012

      After quite some time in beta, we are finally releasing logFaces clients for MAC users. We have originally aimed to carbon based architecture but this appears to be impossible. What we needed from SWT to function properly on MAC simply doesn't work with carbon version of SWT. So we switched to cocoa, it looks and works much better. You will find 32 and 64 bit distributions in downloads. Enjoy!


      v3.1.1 maintenance release

      09 Feb 2012

      This is the first maintenance release for v3.1, feel free to download. The release notes have more detailed information, here is a brief summary:

      • We had a bumpy upgrade for those of you using MongoDB, so here comes the correction. We did something not very clever by trying to manage the indexes automatically. Not always it's the best choice, so now you've got an option in admin page to opt out the automatic management of indexes. This is particularly useful if you must use compound indexes which sometimes perform better than singe attribute indexes. Note that by default this option is now disabled, make sure you set it up as required after the upgrade.
      • Since we added several new properties for MongoDB integration some of them didn't get converted properly which resulted in some exceptions through the administration console. Now fixed forever.
      • We have received several recommendations from 10gen (the developers behind MongoDB). First - the driver (2.7.2) we included in the distribution appears to be problematic performance-wise, so it must be upgraded to the latest (2.7.3). After upgrade make sure that it's in /lib/dbdrivers folder and it's the only driver. Second, we've added another option to enforces periodic getLastError call on database connection, it's believed to improve the throughput on a very heavy loads.
      • Several annoying bugs in client related to displaying very long names, MDC queries and inner class separators.
      • Appenders had a bug creating malformed XML caused by some control characters which had to be escaped.

      v3.1 is released

      09 Jan 2012

      Happy new year everyone!

      We start this year with a shiny new v3.1. There are lots of new things and fixes, see the release notes. Please make sure to read this for upgrading. I will briefly touch the most notable items:

      As you might know already, Oracle officially announced JDK7. We are committed to support two recent major versions simultaneously which would be Java6 and Java7 at the moment. It also means we will officially stop supporting JDK5 from now on. If you are a paid customer and absolutely must stay with Java5, please let us know and we will send you a special build.

      We have completely redesigned filtering mechanism capturing logs on server and client. Replaced with JEXL criteria rules, it now allows fairly complex and flexible expressions. Makes it more consistent too. This affects major admin tasks such as database, reports, triggers, as well as client views. You can use any attribute to include or exclude events - we particularly wanted to get the MDC for triggers and reports. Here is how it looks (click to enlarge):

      There is a new face in client called Daily Distributions, you will find it on the main toolbar. It displays log distributions in a day time-line. The distributions can be categorised by levels, exceptions, apps and hosts. See those red and yellow bars? These are errors and warnings - selecting it will instantly fetch the logs for you (click to enlarge):

      MongoDB stuff - we have added security support, upgraded and tested latest drivers, exposed all integration parameters to the admin pages with lots of tool tips and reduced all attribute names to save the storage space. Make sure you read this for upgrading. The admin page for MongoDB integration looks like this (click to enlarge):

      We have added an internal appender to the server to allow self-monitoring of logFaces server by its own tools. You can now create triggers and reports on logFaces packages and classes and simply take action yourself or send them to our support.

      Here is a list of bug fixes, small and not so visible improvements. We are looking forward for your feedback as usual!


      v3.0.5 is released

      02 Nov 2011

      Those of you who use OpenDS directory service will find this release useful. It corrects some minor compatibility issues we had with importing user groups for authorization. Now fixed, tested and ready to roll. There are no special instructions for the update.

      Clients get couple of new features too. You can now customize sounds in real-time perspectives, there are few common chimes to choose from. Also, should you want to run the client and let it automatically do some query, there is a new command line argument which allows this. Could be handy for launching clients programmatically (user manual has more details on this).


      v3.0.4 is released

      10 Oct 2011

      If you ever encountered overload problems with logFaces server - grab this update. We have improved the mechanism which guards the server overload when database throughput is lower than the inflow from appenders. Apparently there was a problem which made server unstable if the load spike would be too long. Also, there are some metrics added in admin/status page to help dealing with heavy loaded systems. Now you will be able to see actual inflow from appenders along with actual (and average) database throughput. This should help estimate whether your current setup is good enough for the inflow you anticipate.

      rates

      Clients get new feature - you can now do text search in queries and real-time perspectives. Aside from simple text search you will also be able to mark the search results on the side ruler or filter out the results completely. This is how it looks:

      rates


      v3.0.3 is released

      5 Sep 2011

      Just posted second maintenance update for v3 with several rare but important fixes. Here is the list of bugs killed, please upgrade if they are relevant to your usage pattern.

      • Database connection recovery wasn't working properly in certain cases.
      • When server restarted with database being offline we would sometimes miss filter settings and forget to save them.
      • Shared workspaces credentials shouldn't be persisted so that when workspace is imported, users could use their own credentials. This fix is only relevant when working with security enabled on server.
      • Hosts view didn't always update with client running in server mode.
      • Clients in server mode somehow got broken in previous release. Get it now if you use server mode.

      v3.0.2 is released

      15 Aug 2011

      We are happy to announce a significant set of updates for the latest version. This maintenance release is now all yours!

      There is an unusually long list of items we managed to address this hot summer. There are lots of improvements and bug fixes, please have a look at release notes. Here are the most notable points:

      • MongoDB related. Now it's possible to use replica sets for redundancy and fail-over. We've run some quite extensive tests with it, and I must say it's quite an impressive feature. We have also improved the way capped collections can be used by automatically converting to it. There are several new properties added to configuration in this respect, you will find it explained in user manual. Also, there were several nasty bugs related to indexes.
      • MySQL queries will now work with streaming, I wish I knew about this hidden feature earlier. We did all sorts of tricks around the lack of server cursors in MySQL. Not anymore. Streaming significantly improves many queries, particularly those with large data sets.
      • Connecting to LDAP over SSL is now possible, you will find a new parameter in admin security page. If you will be authenticating with a well known root CA, there won't be a need to do anything. Otherwise the trust store with that certificate will have to be let known to logFaces server JVM. Self signed certificates can be used, but they will have to be registered.
      • Server filters (database and triggers) are now capable of trapping (or ignoring) particular exception classes, not just a thrown indication.
      • Lots of improvements in admin status page, particularly the overload indication. When database becomes a bottleneck, logFaces server goes into a special mode of overflowing the inflow into the local storage. This is often a performance killer. So we have added an indication on status page which will show you if your server is being overloaded (over-fed) with input logs. If you will see red colour with a flag - it will be the sure sign for checking your setup.
      • Clients can now share workspaces on server and import them from server for better team collaboration. Setting up logFaces client with lots of filters, queries, components, could be a tedious task, and it's best if only one person does it once and then shares with others.
      • Clients now have a new view - Hosts. This is yet another convenient jump point into the log data. It displays all hosts ever logged to logFaces. You will be able to query their logs with just a click of a mouse.
      • Distribution for Solaris x86-64 is now available

      v3.0.1 is finally released

      23 May 2011

      After almost two months in beta testing we are pleased to announce the release of logFaces v3.0. You will find detailed release notes and new user manual in downloads. If you're planning to upgrade from previous releases, please make sure to look in here. Briefly this is the formal list of new and noteworthy items:

      • Windows 64bit OS's are now welcome to run our server, our new Wrapper license shines!
      • logFaces can now work with MongoDB, it proves to be stable, RAM thirsty (as expected) but works wonders with fairly large volumes of data. Before we didn't see numbers like 100 million records (in logFaces context), but with MongoDB it becomes reality.
      • We now support NLog - popular logging platform in .NET universe. There are two reasons we went into this - 1) it has both TCP and UDP asynchronous appenders which work seamlessly with logFaces and 2) log4net seems to be in hibernation for almost 5 years and .Net users are desperately looking for alternatives.
      • Server authorization rules can now work with wildcards.
      • Many improvements in administration pages.

      Clients get a major face lift:
      • It is now possible to do client queries for particular Exception classes, not just anything thrown.
      • Added periodically auto-reloaded queries.
      • Better integration with external editors for displaying source code. Using ${file} and ${line} placeholder you can now launch your favourite IDE right from the logFaces view.
      • In addition to sound alerts it's now possible to display tray-like balloons with nice alert message.
      • Improved 'Details View' will now display all event properties, not just those mapped to MDC.

      v3.0 beta 2

      05 May 2011

      This is the second beta for v3.0. So far, there is quite a positive feedback, there are no major issues, except the one below:

      • It appeared that MongoDB has specific way of managing disk space and releasing it back to the OS. Since we do fairly massive deletes when database starts rolling, there is a risk of running out of a disk space. We did most of the tests with MongoDB v1.6.4 and it does look like the disk space is sometimes not re-used properly. Latest version (1.8.1) doesn't seem to have this problem, but to avoid such situation entirely we added a scheduled job to compact the space explicitly. You can now specify a cron expression to do this periodically. Another option is to run your own scripts to do the same. The only catch is that this operation is slow and costly, so it should be run off rush hours. But it's better to be slow sometimes than risk the machine failure.
      • This maintenance job will do two actions - compact the space and rebuild the indexes. Both actions are optional and can be substituted by external script.
      • Admin status page now has more details.
      • Several minor bug fixes in client and server.

      v3.0 beta

      04 Apr 2011

      We are beta stable with v3.0, feel free to give it a ride! Final release is due in May. There are no special installation instructions. Pre-release notes can be found here. Along with bug fixes here are the new noteworthy features:

      • Java Service Wrapper - our bootstrapping tool, now comes with a commercial license, which we acquired to support more platforms, particularly Windows 64 bit systems.
      • MongoDB is now fully integrated and looks promising. Although it looks stable, I would still consider this an experimental feature as we don't have any production experience with this tool yet. How does it work in real life? We are really looking forward to hear from you. The updated user manual has instructions for settings it up - it's extremely simple.
      • Improved authorization rules, it is now possible to use wildcards to map users to the server content.
      • Extended queries based on exception classes, you will now be able to fetch not just thrown log statement but precisely which exceptions you'd like to see, for example java.lang.NullPointerException, etc.
      • Client gets a lift; added auto-reloading query results, query duplication, launching external editors with parameters so that you could use your IDE to open the source code from logFaces. And many minor cosmetic fixes.

      Minor updates

      12 Feb 2011

      There are couple of small updates which aren't worth version increment but still worth noting. First is a bug in server receivers which were sometimes replacing the origin host name with a localhost. And the second is in logback appender, it wasn't transmitting the throwable information properly which was resulting in missing exception causes. If you use logback - get the updated appenders.jar here and replace it in your application classpath.


      Plans for the year

      04 Jan 2011

      Here we go, 2011 is here and I'd like to give you an update on what's going to happen this year. We're planning to release a major upgrade with two important things.

      First, we've bought Wrapper Developer License (Tanuki Software) in order to be on Windows 64bit without pain and with proper support. Java Service Wrapper proved to be a fantastic piece of software, so logFaces will be shipped with latest wrapper. It will work on even more operating systems.

      The second big thing is a change related to databases. Well, not a change actually, but a wider scope. In the last couple of months I've been looking into an alternative to the relational databases - so called NoSQL databases. And that proves to be an interesting alternative. Of course, logFaces will continue to work with SQL database, we are not replacing it, we're extending it.

      We've already made logFaces work with MongoDB as its primary storage and I must say I'm very excited about it. MongoDB is a document database that bridges the gap between key-value stores (which are fast and highly scalable) and traditional RDBMS systems. The simplicity, elegance, performance boost and scalability are just so impressive. It feels like MongoDB was made for logFaces, just a perfect combination of technologies. It took some time to adapt new interfaces, it was quite straightforward but we had do split the code base to be operational with both SQL and NoSQL databases. That was actually more of a code refactoring than an architectural change. Comparing to the SQL sibling with its schemas, hibernates, transactions, and other heavy stuff, MongoDB looks so elegant and simple. I like that.

      I like simple things that work. One limitation we've seen so far is the support for 32 bit OS's. MongoDB guys put it simple - we don't want to hassle with the old stuff but looking ahead. And what's ahead is cheap and abundant RAM, so why torture your code with limitations you know will go away soon. I like this attitude. So, MongoDB will be available to work with logFaces as soon as we finish polishing the code and complete the tests. I'll keep you informed how tests are going, we're still getting used to this new stuff, so I can't give any concrete dates. But if things don't go south, the release will be some time in the spring. If you've got something to share about your MongoDB experience, please jot me a line.


      Version 2.6.3 is released

      15 Nov 2010

      In this update we are adding support for custom levels of log events. Those of you who extend default log4j priority levels will find this update very useful. Because appenders send levels as plain numbers in XML, we had to add a mapping to support them throughout the system. In admin console you can map your own levels so that we propagate them to clients for proper display. Note that these levels can also be used in all filters - database, reports, triggers, etc. Here is the addition in admin :

      Along with custom levels we also added an option to colorize your views in the way you prefer. Now you will be able to colorize log statements and specify icons to each individual level. If you hate colours, you may as well make it plain black and white. Click on the thumbnail below to see how it looks like :

      There were also several minor bug fixes. The update is fully compatible with previous releases, just get the distribution binaries and update your installation. Clients, as usual, can be updated automatically from Tools menu.


      Version 2.6.2 is released

      24 Oct 2010

      This is the second maintenance release for LDAP integration. You will find the following fixes and additions:

      • MS Active Directory has a strange way of handing referrals. It caused problems when using certain user base DN's, particularly when trying to authenticate users from OU's sitting under the root of directory structure. Now fixed, there shouldn't be a problem with referrals anymore.
      • Fixed problem caused by quoted group names - groups having special characters weren't displayed correctly in admin.
      • Corrected validation of LDAP parameters in admin, added more descriptive feedback.
      • In admin added capability to remove all groups or select several groups for removal in one shot.
      • In admin added LDAP test page to allow online validation and feedback. This should be handy for verifying the setup before actual use with real users and clients. It will try to authenticate a user against actual LDAP and provide feedback on what application logs that particular user will be granted the access to.

      Version 2.6.1 is released

      11 Oct 2010

      This is the first maintenance release in 2.6, targeted mostly for the latest security features.

      • Added LDAP filters for users and user groups, this would be more flexible way for matching users and groups in the directory. User manual is also updated, see details in corresponding section.
      • LDAP user groups with spaces were causing problems in admin, now fixed.
      • LDAP user group names in national languages weren't saved correctly. now fixed.
      • AsyncSocketAppender was missing original thread information before the dispatch (thread name, NDC and MDC). Get the updated appenders.jar here and replace it in your application classpath.

      v2.6 is here!

      12 Sep 2010

      Here comes long awaited v2.6. Those of you who waited for logFaces & LDAP integration can finally enjoy the user access control. Updated user manual holds more details. Upgrade instructions can be found here. Here's what we have for you:

      • LDAP authentication and authorization for logFaces users.
      • Client on MAC has finally become a reality and enters beta cycle (thanks to Shawn McCarthy !)
      • Installers for Windows will now work with elevated privileges, so that Vista, Windows7 and Server 2008 installations are now a breeze. Also updated distributions for Linux so that you won't have to fiddle with chmod anymore.
      • Server updates will now be much simpler, there is no need to backup configuration anymore, it will be preserved during updates.
      • Many improvements in administration console. Some of the internal settings related to database are exposed now. Pages are not fixed length anymore allowing to contain more items e.g. reports, triggers.
      • Client queries will now remember their columns, packing columns is now much faster. Overall speed of queries is also improved.


      New appender features

      30 Jul 2010

      It's been national appenders month this month .
      We posted new stuff for both AsyncSocketAppender and lobgack appender. Now both of them have a backup feature which (optionally) will save files on local disk when transition queue fills up. Queue overflows may occur when log server is unavailable while application keeps running. We didn't want to automate this, because backup could grow into a really large collection and sending it could affect hosting application performance. But at least you will have an option to manually insert those files into a logFaces server when you see fit.

      logback appender was completely re-written to act exactly like it's log4j sibling. Now it's also asynchronous with fail over and backup options. Additionally, there is a very cool new feature based on a MARKER concept introduced with the logback API. Using variety of filters your application can drop markers into log statement and that is an additional piece of information which can be used for filtering and searches. For example, if you do this in your code :

      • Marker ADMIN = MarkerFactory.getMarker("SYS-ADMIN");
      • logger.trace(ADMIN, "this event is for the attention of sysadmin");

      Then our appender will automatically transfer SYS-ADMIN marker to the server and you will be able to easily find all those marked events with MDC queries and filters. We transfer marker value into event properties before sending it over the wire, so on server you will want to map a context named 'marker' to any future markers emitted by your application. This is a predefined name, and all marker values will be tied to this property.

      User manual is updated for all those new features. Get the updated appenders.jar here and replace it in your application classpath.


      logback appender updates

      10 Jul 2010

      logback framework is changing so frequently, sometimes its hard to follow its pace. This time we post the fix for our logback appender to be compatible with latest release 0.9.24. Get the updated jar from here and replace it in your application classpath.

      Note that you must use slf4j-api of version at least 1.6 or higher.


      Security features preview

      24 Jun 2010

      We are getting pretty close to the release of security features. The development is almost done and we're going to hit the test phase in a couple of weeks. Just to share with you our plans, I'd like to show what we're up to.

      Access control will be an optional feature, those of you who don't need it will not be affected in any way. But those who want to provide an access control into logFaces server will be offered LDAP based authentication and authorization. Users will configure logFaces server to work with their own directory server in a pretty standard way. Well, this is at least what we are trying to archive. Here is a sample of a new page in administration console we will bring up:

      As you can see, the authorization is also optional. When enabled, we will allow members of user groups to have an access only to those applications specified. For example, groups of developers and groups of testers will be able to see only relevant log data and will not get on each others way. When security will be enabled, clients will be prompted to log in. Credentials will be kept per workspace, so whenever you switch from one server to the other, the login can be performed automatically. Passwords are stored and transmitted in encrypted form. Here is an example how clients will login, note that if the security is not enabled on server, this dialogue will not appear. :

      Login

      If you have any comments or would like to suggest something, feel free to drop us a line via support email or tickets.


      Client update

      17 Jun 2010

      Sometimes I wonder if one could ever get time zones and daylight savings work without problems. No matter what you do, there would still be something to surprise you. We have posted a client update which fixes daylight savings related bug as some of you have reported. To get an update, go to Help menu and check for software updates. After getting the update, make sure to check that your perspectives and queries are using correct time zone as it might still be pointing to a wrong location.


      Build #1548

      27 May 2010

      Fixed bug related to creation of database schema with configurations using connection pool and MySQL


      Build #1532

      24 May 2010

      There are several important bug fixes for your attention. They aren't critical, but if you use the following features, consider to download the new build. Upgrade instructions are as usual - here.

      • Fixed a bug related to database connection loss, prevented failure in admin status tab when database connection breaks.
      • Fixed a bug in complex MDC queries where mixed AND/OR matches required.
      • Using the client it's now possible to match ALL or ANY of the MDC properties. That applies to both real-time and query views.
      • Using empty user name and password with email accounts is now possible.

      Client updates

      16 May 2010

      There are several updates available for the client. Go to Help menu on client and "Check for software updates".

      • We have drastically improved the display speed of large queries by using virtual SWT tables. Now the view is not populated entirely but only its visible part. Those of you who are on a slower machines or run huge queries should appreciate the difference.
      • If you don't like the tray icon, you can now opt it out through the preferences.

      Version 2.5.2 is released

      26 Apr 2010

      We release second maintenance update for v2.5. Along with bug fixes and several new features we are happy to announce that starting from this release there are 64 bit distributions. Also, the server is now available for Solaris. Those new distributions are under beta tag until users confirm it's working well, but please do give it a try - after all it's the same code base wrapped up for different platforms. Upgrade instructions can be found here.

      Below is a complete list of new things you will find in this release:

      • E-mail notifications send from server can now be prioritised.
      • Completely redesigned and improved report administration pages.
      • Clients will now be able to lookup source files through HTTP URL mappings. Lookup actions are now asynchronous to avoid blocking.
      • Introduced a concept of a Workspace on clients to allow fast switching from one environment to another. Those of you who work with several logFaces servers should find this feature very useful. No more client restarts when switching the server end point.
      • Improved display of log messages in client. We've made a separate view to display the message texts similar to the one for exceptions. Particularly useful for large multi line messages.
      • Upgraded clients to Eclipse 3.5 RCP targets, not that it's a new feature, but it's a good idea to stay up to date.
      • Servers are now available for linux-x86-64, solaris-sparc-32, solaris-sparc-64 platforms (stable beta).
      • Clients are now available for linux.gtk.x86_64, win32.win32.x86_64 (stable beta)

      Bug fixes :

      • This one should go first in the list as it was the hardest to fix. Some users reported client problems on Vista and Windows7 machines when real-time views would go wild with refreshes. It took us some time to figure out that those OS's behave quite differently with SWT and apparently extremely slow on some operations related to tables - sometimes by hundreds of times in respect to XP machines. We did change the mechanism of the tables drawing and now everything should work without a problem.
      • Fixed bug related to Oracle metadata, it was causing to use wrong constraints on some columns in the schema. We also did lots of tests using CLOB's instead of deprecated LONG's. Looks pretty safe, go ahead and use it yourself. Particularly useful for very large messages and exception stack traces.
      • Fixed quite some bugs in Linux clients, mainly related to file names and separators which prevented opening log files and sources.

      Client, logback appender fixes

      23 Mar 2010

      Somehow the latest client build had a broken server mode feature. If you use server mode in your client, please make sure to take the latest update. Go to 'Help' menu on your client and install the updates.

      We've also posted the fix for the logback appender to be compatible with latest release 0.9.18 Get the updated jar from here and replace it in your classpath.


      UDP appender updated

      17 Mar 2010

      We have fixed several issues with our Java™ based UDP appender - not frequently used one, it somehow slipped the attention. Get the updated jar from here and replace it in your classpath. This is how it should be configured in your log4j.properties :

      • log4j.appender.LFSU = com.moonlit.logfaces.appenders.LFUDPAppender
      • log4j.appender.LFSU.locationInfo = true
      • log4j.appender.LFSU.application = YOUR-APP-NAME
      • log4j.appender.LFSU.remoteHost = logfaces-server-host-name-or-ip
      • log4j.appender.LFSU.port = 55201
      • log4j.rootLogger = TRACE, LFSU


      Version 2.5.1 is released

      2 Mar 2010

      This is a first maintenance release for v2.5, upgrade instructions are here.. Here is a list of issues we've addressed:

      • Server - we've found a resource leak in log4j socket receiver which might have caused issues in a very long runs without restart. We have completely replaced it with our own and it is much better now.
      • Server - added two items in admin status panel - one is to obtain thread dumps and another one is active applications counter. All these are for feedback and troubleshooting.
      • Server - removed descending indexes from MySQL default schema, it shouldn't have been there in the first place as MySQL doesn't support descending indexes.
      • Server - added an option to use database connection pools, you can now specify c3p0 in your hibernate schema.
      • Server - Important one about MySQL wait_timeout - it was causing loss of database connection when server was idle for longer than wait_timeout. Using connection pool the problem is solved nicely - specify hibernate.c3p0.idle_test_period so that it's smaller than wait_timeout and you shouldn't have this problem ever again.
      • Server - we regularly update open source dependencies, so this time it were java mail, hibernate, c3p0, PostgreeSQL driver binaries.
      • Client - it's now possible to drill into historical data from real-time views as in queries.
      • Client - added authorized access to deletions from repository view. You will have to use your admin. credentials to delete records.
      • Client - fixed bug in repository view when it was populated by large number of elements.
      • Client - Re-drawing real-time views on Windows 7 seems to have a small issue. It's noticeable with very high loads when view fills up and starts to rotate. We are waiting for SWT package to be released for Windows 7 as it seems that problem might be in the way tables are drawn in this OS. Meanwhile, we have tried to improve the mechanism as much as we could and added an option to clear the view automatically when it fills up.
      • Appender - removed annoying messages to stdout when its queue got filled up. Now it will only warn once.

      Version 2.5 is released

      10 Jan 2010

      We've grown one version taller and one year older .
      With the help of our users, this release brings significant improvements and many new and exciting features. If you are upgrading from previous releases, please read the upgrade instructions here. Below is the summary of new features :

      Notification triggers

      This feature will complement our reporting mechanism. Notification triggers will work in real-time and send e-mail alert as soon as something important takes place.

      Triggers

      How important and what is important, it is all up to you. A trigger is a very fine filter which can be tuned to seek out very particular log statements. In addition to being a filter, trigger can also work like a counter and only fire when certain amount of interesting events are detected within specified time span. For example, think of a trigger that detects a burst of exceptions in the data layer of your system. You don't want to receive an e-mail every time there is a problem. But you definitely want to know that 50 exceptions popped on that particular host in just 2 minutes.

      New appender with queue and fail over

      We made a new appender to go with your applications. It has two major features - it is asynchronous and it is fail over capable. Being asynchronous means that log statements coming from your application aren't sent to the server at your expense, but rather done on a background thread. This also will help to keep some of the log statements during server down-time, ensure faster start times and significantly boost performance in the cases of bursts of logs. As to the fail over, this new appender will be able to quietly switch to another server without disrupting your application work. There are plenty of configuration options and we hope it will be good for most of the users.

      Improved handling of load spikes

      logFaces server already has a built-in mechanism to handle heavy load spikes. In this release we have made significant improvement to this mechanism to make it more robust and flexible. When load on the server becomes too high, the data gets over flown to the local disk. We have integrated ehcache for handling all disk operations and it shows fantastic results in performance. It's highly configurable and can be adopted to various situations.

      Sophisticated view filters

      Here comes the visual part which we have improved significantly in v2.5. We are going to introduce view filters to focus or ignore particular log statements.

      Filters

      This concept is similar to already existing perspectives we have with the only difference being that view filters apply on client side. Good example is when you take a large query covering a whole day of data. Once you've got the data, you want to play around with it. For example, focus on particular thread or host?

      Filters1

      Or ignore particular packages which aren't relevant? Or focus only on exceptions? All this could be done now without extra trip to the database. And yes, the components (read below) are also applicable and will make great filters - instead of focusing on particular items you will be able to focus on a whole layer.

      Improved perspective settings

      We have done some major face lift to real-time perspective settings. Now it will be possible to use wild cards when defining include and exclude filters. This should greatly simplify and speed up the process of tuning real-time views.

      Tuning

      New face - components!

      Components Component - is a new concept we introducing in v2.5. A component is simply a collection of packages.

      Why do we want it? Two points here; one - to be able to work with a large number of packages easily, and two - let others (e.g. QA people) to see the system from higher level.

      Now, component is only a visual representation which you use to cut your system into a larger blocks. Once you have done that, you will be able to access the log data instantly, or filter it out, or focus on it. Real quick. Just a convenience, but we think it should be very handy particularly for those who swim in an ocean of packages and loggers.

      Version 2.4.4 is released

      15 Oct 2009

      We are pleased to announce the release of version 2.4.4 .
      Along with minor bug fixes, this release brings up logFaces API and some improvements in data mining experience.

      logFaces API

      The motivation for the API is to allow usage of aggregated log data programmatically. If you are familiar with the way log4j works, look at logFaces API as a "super-receiver", which simultaneously gets data from many applications and hosts. You will be able to monitor errors coming from various ends in your system and use this information for your own needs. Many systems today have their own management or administration consoles, using logFaces API you will be able to embed log data into your own consoles, build customized log viewers or react to events in your system.

      The API can be downloaded separately from here, it's packaged into a zip archive and contains everything you would need to get started - binary dependencies, documentation and code examples. Please have a look at User Manual describing in great details how to use the API.

      Improved data mining experience

      We have added a new feature in the client to simplify working with large result sets. Now you've got an option to filter out retrieved data on the spot and without extra trip to the database. When you do a query, you can reduce logs by severity levels, hosts, loggers, threads, text and MDC variables. Check out the new options in drop down menu :

      Also, there are new quick shortcuts to get hold of historical data directly from repository view.

      Version 2.4.3 is released

      18 Aug 2009

      This maintenance update fixes several issues related to e-mails and reports. We have added an option to test e-mail settings in administration console and also provided several improvements in report definitions. Particularly, - issue reports on a fractions of the hour, use wildcards for matching loggers and using optional zipping of the attachments. Management of reports is also simplified and improved. Starting from this release you will be able to check if there are any server updates we release. This can be done directly from admin. console status tab. There are also several interesting additions to the client and user experience :

      Coloured overview of query results

      When you fetch lots of log, you'd want to see quickly where (if any) problems are in the huge list of results. We have added a right side overview panel which will mark in bright colours all potential problems. This will allow jump real quick into particular line within the result set. Check out this screen shot :

      Bookmarks in queries

      While working with large result sets, you often want to move quickly from one point in time to the other. Now right clicking on the event, you can set a bookmark and then jump to it later with one click. Bookmarks are displayed on the overview bar next to the query results.

      Clipboard operations

      If you want to assign a bug or open a support ticket with attached log message - now you can copy log events directly from client views through the clipboard. The clipboard will contain well formatted textual log statements of your choice. You would then paste it into any textual content. The format is adjustable, several events can be copied at once.

      Particular day errors and traces

      We have added another fast query which can be executed directly from the repository without creating a special query. Right click in repository view and select "Particular day", this will take to errors or traces of specific day.

      Similar events counter

      If you see something suspicious in your log data, right click on event and ask to find similar events. We will tell you how many times and when this particular event have taken place. Very useful for finding repetitive occurrences of the same issue.

      More flexible drill downs

      Drill downs are now extended with an option to drill into information related to selected application, host or logger. This should be more convenient way to extract concise information.

      Version 2.4.2 is released

      17 Jul 2009

      We are pleased to announce the release of version 2.4.2 - maintenance release with some important updates, thanks to our users feedback! Along with bug fixes, there are several new and exciting features - see below :

      Logback appender

      Long awaited and asked by many - logback appender is now part of our distribution. We also provide source code just in case someone would want to improve it. Check out user manual on how to use it and where to find it.

      Database schema is externalised

      If you're an advanced user and DBA - now you can now have some control over the database schema. This should help to tune database performance by adjusting size constraints and indexes. More details again are in user manual.

      Exception stack trace view

      Now you've got spacious stack trace viewer. And it also links you to the source code, just click on the trace and see where the call is coming from. Check this out :

      MDC queries

      This concludes our saga with supporting mapped diagnostic context. Now you can query log data based on MDC and see those parameters as columns in all views. Administration console now provides mapping of MDC names your application generates to our database columns.

      Small widgets

      Handy little tool - database records counter on status bar - click on it to refresh. In addition to domain filter, we've also added a package filter in repository view. This should allow faster navigation in the maze of packages.

      Version 2.4 is released

      9 Jun 2009

      New features for this release :

      • Dashboard of counters
      • Source code correlation
      • Improved MDC support
      • More drill down options and queries
      • Improved user experience
      • Improved performance with large data loads
      • Platform neutral distribution

      Version 2.3 is released

      1 Feb 2009

      This is a maintenance release with bug fixes reported by users.

      Version 2.2 is released

      28 Nov 2008

      After long time of internal use and development we are releasing logFaces for public review as a downloadable standalone product. Should we call this a logFaces's birthday? .