| ~~ Licensed to the Apache Software Foundation (ASF) under one or more |
| ~~ contributor license agreements. See the NOTICE file distributed with |
| ~~ this work for additional information regarding copyright ownership. |
| ~~ The ASF licenses this file to You under the Apache License, Version 2.0 |
| ~~ (the "License"); you may not use this file except in compliance with |
| ~~ the License. You may obtain a copy of the License at |
| ~~ |
| ~~ http://www.apache.org/licenses/LICENSE-2.0 |
| ~~ |
| ~~ Unless required by applicable law or agreed to in writing, software |
| ~~ distributed under the License is distributed on an "AS IS" BASIS, |
| ~~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| ~~ See the License for the specific language governing permissions and |
| ~~ limitations under the License. |
| Quick Tour of Apache Chainsaw™ features |
| |
| Heres just a brief run down of some of the features of Chainsaw v2: |
| |
| * <<Saved Preferences>> - You can fully customize each Tab the way you want it, and it will restore it's state the next time. |
| |
| * <<Responsive>> - When events are screaming in, you don't want the GUI to meltdown. You can control how responsive the GUI is and determine the frequency of updates. |
| |
| * <<Tabs/Docking>> - Chainsaw routes separate applications/remote hosts' events to a unique Tab within the GUI. These tabs can be undocked from the main window. Using these features you can manage multiple application logs using the one GUI. |
| |
| * <<Coloring>> - You can specify your own rules to color each event row depending on the attributes of a LoggingEvent to help you locate important events. |
| |
| * <<Dynamic and powerful filtering>> - Helps you locate stuff. There's support for quick-and-dirty filtering, right through to advanced expression-based filtering (e.g. "LOGGER == 'com.mycompany' && LEVEL == ERROR" ). |
| |
| * <<Cyclic>> - A tab view can support a Cyclic-based model, which constrains it's view to the last X events, ensuring you don't hog memory. This is great for monitoring live applications. |
| |
| * <<Built-in documentation and tutorial>> - HTML-based documentation included in the package. |
| |
| Quick Start |
| |
| When Chainsaw first starts up, it will look something like this: |
| |
| [images/chainsaw-overview.png] Overview |
| |
| There's a fair amount of complexity with the GUI, but we'll go over it one apsect at a time. |
| |
| The first thing we want to do is to open up our 'Receivers' panel so that we can |
| get log events from a source. To do this, click the radar dish icon on our |
| toolbar to open up the receivers panel. Chainsaw should now look something |
| like this |
| |
| [images/chainsaw-with-receivers.png] Chainsaw with Receivers |
| |
| Now let's connect an application to Chainsaw in order to view its log events. There are multiple |
| ways to connect an application to Chainsaw, but for this illustration we will |
| connect an application that uses Log4j2 to Chainsaw. Whithin Chainsaw, the |
| Receivers are configured to receive log events fom a source. |
| |
| Using the configuration from our configuration library for a TCP connection, |
| we need to make a reciever that will receive the log events. This new reciever |
| should be made by clicking the 'new reciever' button on the receivers pane. |
| In this case, since we want to get JSON data, we will select the 'New JsonReceiver' |
| option. |
| |
| [images/chainsaw-new-receiver.png] New Receiver |
| |
| We can now configure the receiver with its options. For now, let's call it |
| 'Log4j2-JSON' so that we know where this data is coming from. |
| |
| [images/chainsaw-configure-json.png] Configure JSON receiver |
| |
| Once we create the new recevier, we can now see that we have both a new tab |
| and a new recevier defined in our receivers panel: |
| |
| [images/chainsaw-with-receiver.png] Chainsaw with Receiver |
| |
| Running an application that logs JSON data now lets us to see the log |
| message that come through |
| |
| [images/chainsaw-with-events.png] Chainsaw with events |
| |
| Now that we have events in Chainsaw, we can now investigate events and view |
| more information about them. |