Transcript
TIBCO LogLogic® Unity User's Guide Software Release 1.0.0 November 2014
Document Update: January 2015
Two-Second Advantage®
2 Important Information SOME TIBCO SOFTWARE EMBEDS OR BUNDLES OTHER TIBCO SOFTWARE. USE OF SUCH EMBEDDED OR BUNDLED TIBCO SOFTWARE IS SOLELY TO ENABLE THE FUNCTIONALITY (OR PROVIDE LIMITED ADD-ON FUNCTIONALITY) OF THE LICENSED TIBCO SOFTWARE. THE EMBEDDED OR BUNDLED SOFTWARE IS NOT LICENSED TO BE USED OR ACCESSED BY ANY OTHER TIBCO SOFTWARE OR FOR ANY OTHER PURPOSE. USE OF TIBCO SOFTWARE AND THIS DOCUMENT IS SUBJECT TO THE TERMS AND CONDITIONS OF A LICENSE AGREEMENT FOUND IN EITHER A SEPARATELY EXECUTED SOFTWARE LICENSE AGREEMENT, OR, IF THERE IS NO SUCH SEPARATE AGREEMENT, THE CLICKWRAP END USER LICENSE AGREEMENT WHICH IS DISPLAYED DURING DOWNLOAD OR INSTALLATION OF THE SOFTWARE (AND WHICH IS DUPLICATED IN THE LICENSE FILE) OR IF THERE IS NO SUCH SOFTWARE LICENSE AGREEMENT OR CLICKWRAP END USER LICENSE AGREEMENT, THE LICENSE(S) LOCATED IN THE “LICENSE” FILE(S) OF THE SOFTWARE. USE OF THIS DOCUMENT IS SUBJECT TO THOSE TERMS AND CONDITIONS, AND YOUR USE HEREOF SHALL CONSTITUTE ACCEPTANCE OF AND AN AGREEMENT TO BE BOUND BY THE SAME. This document contains confidential information that is subject to U.S. and international copyright laws and treaties. No part of this document may be reproduced in any form without the written authorization of TIBCO Software Inc. TIBCO, LogLogic, and Two-Second Advantage are either registered trademarks or trademarks of TIBCO Software Inc. in the United States and/or other countries. Enterprise Java Beans (EJB), Java Platform Enterprise Edition (Java EE), Java 2 Platform Enterprise Edition (J2EE), and all Java-based trademarks and logos are trademarks or registered trademarks of Oracle Corporation in the U.S. and other countries. All other product and company names and marks mentioned in this document are the property of their respective owners and are mentioned for identification purposes only. THIS SOFTWARE MAY BE AVAILABLE ON MULTIPLE OPERATING SYSTEMS. HOWEVER, NOT ALL OPERATING SYSTEM PLATFORMS FOR A SPECIFIC SOFTWARE VERSION ARE RELEASED AT THE SAME TIME. SEE THE README FILE FOR THE AVAILABILITY OF THIS SOFTWARE VERSION ON A SPECIFIC OPERATING SYSTEM PLATFORM. THIS DOCUMENT IS PROVIDED “AS IS” WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT. THIS DOCUMENT COULD INCLUDE TECHNICAL INACCURACIES OR TYPOGRAPHICAL ERRORS. CHANGES ARE PERIODICALLY ADDED TO THE INFORMATION HEREIN; THESE CHANGES WILL BE INCORPORATED IN NEW EDITIONS OF THIS DOCUMENT. TIBCO SOFTWARE INC. MAY MAKE IMPROVEMENTS AND/OR CHANGES IN THE PRODUCT(S) AND/OR THE PROGRAM(S) DESCRIBED IN THIS DOCUMENT AT ANY TIME. THE CONTENTS OF THIS DOCUMENT MAY BE MODIFIED AND/OR QUALIFIED, DIRECTLY OR INDIRECTLY, BY OTHER DOCUMENTATION WHICH ACCOMPANIES THIS SOFTWARE, INCLUDING BUT NOT LIMITED TO ANY RELEASE NOTES AND "READ ME" FILES. Copyright © 2014-2015 TIBCO Software Inc. ALL RIGHTS RESERVED. TIBCO Software Inc. Confidential Information
TIBCO LogLogic® Unity User's Guide
3
Contents TIBCO Documentation and Support Services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 Signing into the Web UI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7 Signing out of the Web UI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 Editing your Profile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9 Search Basics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 Using Content Assist . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 Using the Search field . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 Using the Time field . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Search Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .12 Charts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 Columns . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 About Columns . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 Raw Data Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 Table Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 Correlation Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
Search Syntax Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 Event Query Language Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 Common Search Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 USE Statement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 FILTER Statement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 Predefined Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 Time Range Expressions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 COLUMNS Statement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 GROUP BY Statement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 SORT BY Statement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 LIMIT Statement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 Search Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 Event Correlation Language Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 Rule Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42 Identifier Environment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 Event Group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 Expressions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 Aggregation Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 Having Clause . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 Correlation Criteria . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
TIBCO LogLogic® Unity User's Guide
4 Correlation Blok (ECL) Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
About Bloks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 About Filter Bloks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 About Correlation Bloks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 Viewing All Bloks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 Adding a Blok . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 Modifying Bloks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 Deleting Bloks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 About Time Bloks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 Viewing All Time Bloks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 Adding a Time Blok . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 Modifying Time Bloks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56 Manage Bloks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
Manage Triggers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58 Viewing Triggers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58 Adding a Trigger . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59 Configuring SMTP Connection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61 Editing Triggers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61 Synchronizing Triggers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61 Enabling/Disabling Triggers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62 Deleting Triggers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
Monitor Alerts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63 Viewing Alerts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63 Acknowledging Alerts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65 Viewing Alert Details . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66 Viewing Event Group Details . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
Manage Source Configurations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68 Viewing Source Configurations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68 Adding a Source Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69 Enabling/Disabling Source Configurations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71 Editing Source Configurations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72 Deleting Source Configurations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
Supported Log Sources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73 Filter Syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
TIBCO LogLogic® Unity User's Guide
5
TIBCO Documentation and Support Services All TIBCO documentation is available in the TIBCO Documentation Library, which can be found here: https://docs.tibco.com Product-Specific Documentation Documentation for TIBCO products is not bundled with the software. Instead, it is available on the TIBCO Documentation site. To directly access documentation for this product, double-click the following file: TIBCO_HOME/release_notes/TIB_logu_version_docinfo.html
The following documents for this product can be found in the TIBCO Documentation site: ●
TIBCO LogLogic® Unity Installation and Configuration Guide
●
TIBCO LogLogic® Unity User's Guide
●
TIBCO LogLogic® Unity Developer's Guide
●
TIBCO LogLogic® Unity Tutorials
How to Contact TIBCO Support For comments or problems with this manual or the software it addresses, contact TIBCO Support as follows: ●
For an overview of TIBCO Support, and information about getting started with TIBCO Support, visit this site: http://www.tibco.com/services/support
●
If you already have a valid maintenance or support contract, visit this site: https://support.tibco.com Entry to this site requires a user name and password. If you do not have a user name, you can request one.
How to Join TIBCOmmunity TIBCOmmunity is an online destination for TIBCO customers, partners, and resident experts. It is a place to share and access the collective experience of the TIBCO community. TIBCOmmunity offers forums, blogs, and access to a variety of resources. To register, go to: http://www.tibcommunity.com
TIBCO LogLogic® Unity User's Guide
6
Overview LogLogic® Unity is a sleek, modern, and scalable platform enabling technical teams to resolve open issues which require advanced troubleshooting techniques, complex root cause analysis, or deep forensics. LogLogic Unity is a Log processing Search & Alerting tool that takes data from any source and structures that data. This allows for intuitive, fast, and complete interaction with data, resulting in faster turn around from open to close in issue resolution. Its powerful Web User Interface (UI) enables fast and flexible searching, correlation, and alerting. This provides operational insights into infrastructure and application performance and security events. Key Features ●
Modular search queries – Use all or part of saved search filters to build new search queries using new building Blok technology.
●
Multiple search queries – Run multiple searches at the same time.
●
Working data sets – Work with multiple search results without losing what you are working on. Walk away and come back without losing your search results.
●
Data lookup – Enrich your experience with lookup tables enhancing search and alerting capabilities.
●
Data at rest correlation – Perform advanced correlation against historical data to identify trends.
●
Data in motion correlation – Maintain advanced correlation in memory to identify key patterns for alerting.
●
Comprehensive APIs – Leverage core functionality using intuitive APIs built on Representational State Transfer (REST).
●
Scalable clustering technology – Scale horizontally as needed to maintain performance and storage.
LogLogic Unity architectural view is shown in the following illustration:
TIBCO LogLogic® Unity User's Guide
7
Signing into the Web UI The Web UI enables fast and flexible searching, correlation, and alerting. Prerequisites You must start the LogLogic Unity system before logging into the Web UI. For details, refer to the TIBCO LogLogic® Unity Installation and Configuration Guide. Procedure 1. Open a browser and navigate to the URL http://localhost:9680, where localhost is the default hostname and 9680 is the default port number. 2. In the Sign in window, enter your credentials. The default user name is admin and the default password is admin. On successful authentication for the first time user, the product walk-through screens are displayed. Click Next to continue. Click Try it out to open the Search tab and run a sample query using the sample source configuration. The Search tab is opened showing the sample query in the Search field. Click the sample query. Click
to view results of
to start a new search, see Search Basics for details.
TIBCO LogLogic® Unity User's Guide
8
Signing out of the Web UI Procedure 1. Click
located on the upper right corner on the main header.
2. Click the Sign out link. When you are successfully signed out of the system, the Sign in window appears again.
TIBCO LogLogic® Unity User's Guide
9
Editing your Profile You can update your own profile at any time. Procedure 1. Click
located on the upper right corner on the main header and select the Edit profile link.
2. Update the information in the corresponding fields. You can update the email address, personal information, phone number, and password. Only an Admin (a user with Administrator privileges) can update the user ID once it is created. 3. If you update the password in the Old password field, enter the same password in the New password field. 4. Click Save to save the updated information. After updating the information, the Sign in window appears. You must sign in using the updated credentials.
TIBCO LogLogic® Unity User's Guide
10
Search Basics From the Search tab, you can easily interact with your data. It allows you to run simple and complex searches, save search elements and time ranges in the form of Bloks, retrieve results to analyze failures or other anomalies. The basic search retrieves all events that match the search term. Advanced searches are retrieved by a "pipeline" concept, where expressions are separated by pipes ("|"). LogLogic Unity search query language is intuitive and efficient, allowing you to search large data and view results in seconds. The search query mainly supports three types of languages: Structured Query Language (SQL) dialect, Event Query Language (EQL) and the Event Correlation Language (ECL). The Search Syntax Reference helps you understand how to form a search query. By default, results are returned in the ascending order. The Search and Time fields can be combined (AND-ed) or used alone as described below: ●
If you define time period in the Search or Time field, the results are retrieved for the specified time period.
●
If you define time in the Search field and Time field, the results are retrieved for the intersection of the time periods.
●
You must specify time in either in the Search or Time field.
All dates and times are defined in the local time zone of the machine where the system is installed and it is not based on the browser time zone. For complex queries, you can create different types of Bloks that can be reused in future searches. For detailed information about how to build and use Bloks, see About Bloks. For sample search examples, see Search Examples. Click to add multiple search tabs. You can run multiple searches using different search elements on the same data to analyze any anomalies. After you run a query, the header and search fields are collapsed to maximize the results view and the search query is displayed on the top. Click on the top right corner to expand header and search fields.
located
Using Content Assist The Content Assist feature shows typeahead or contextual matches and completions for each keyword as you type into the Search field. These contextual matches are retrieved from your data. You can get assistance for language syntax, column names, source configuration names, recent search history, and Blok names. To enable the Content Assist feature, click located on the upper right corner on the main header and select the Enable Content Assist link. A checkmark indicates that the content assist feature is enabled. As you start typing in the Search field, the Content assist panel displays: ●
Suggestions help you build your search query by suggesting the next matching term.
●
Matching terms identify the matching word as you continue to type.
●
Sources allow you to define a source configuration to be used in your query.
●
History displays all recent search entries that you can choose from to run a query.
TIBCO LogLogic® Unity User's Guide
11
Click on the term to select and add it in the Search field. Once you finished adding all terms, select the fragment in the Search field, the Save fragment as Blok button gets enabled. Click Save fragment as Blok to save the statement as a Blok for later use. The Add new Blok window appears. For instructions on how to add a Blok, see Adding a Blok.
Using the Search field You can enter any valid combinations of syntax languages (SQL or EQL or ECL) with source, filter, or regular expressions. You can use single or multiple terms. Enter USE to start an EQL statement and SELECT to start an SQL statement. You can search based on Bloks. For details on how to add a new Blok or use the existing Blok, see About Bloks. As you start typing, the Content Assist feature shows contextual matches and completions for each keyword into the Search field. If the search expression syntax is valid, a green checkmark next to the syntax. Click
appears
to view results.
For example, enter the use system | sys_eventTime in -1d:NOW in the Search field to retrieve events from the system source configuration profile within a certain time range.
Using the Time field You can enter absolute and relative time ranges. You can search based on Bloks. From the Search tab, enter the time period in the Time field and click new time Blok or use the existing Blok, see About Time Bloks.
. For details on how to add a
All dates and times are defined in the local time zone of the machine where the system is installed and it is not based on the browser time zone. For example, enter -5h to retrieve all events that occur in the last 5 hours.
TIBCO LogLogic® Unity User's Guide
12
Search Results After running a search query, you can view search results in the Result tab. You can visualize results using Charts or Data panel. After running a query, if you retrieve lots of results, you can group the results without having to issue a new query, and then drill-down into the information. This allows you to see both aggregated counts as well as create visualization elements to better isolate trends and issues. You can include multiple filters to narrow your results. Create a filter in the context of a message and view results based on a specific filter. After running the search query, a progress bar appears above the Result tab showing the number of processed events. Based on your data, it may take a few minutes to retrieve results into all three panels. By default, a maximum of 10,000 results will be displayed in the Result tab. To increase the limit, use the LIMIT clause in your query. See LIMIT Statement for details. Add multiple result tabs to view the same data in different forms. Click to add multiple result tabs. When results are grouped together, a new Result tab displays showing the grouped results for the selected value. The Result tab is divided into three panels: ●
Charts - displays results graphically using a line chart in the top panel.
●
Columns - provides all available columns and their associated values based on each search query in the left bottom panel.
●
Data - displays data in different formats in the right bottom panel: raw format and normalized tabular format.
TIBCO LogLogic® Unity User's Guide
13
Charts A chart is a visual representation of your data. By using elements such as lines (in a line chart), a chart displays a series of numeric data in a graphical format. You can add multiple result tabs to view the same data in different formats. A chart displays the total event count for a specified time period. You can use different options to view chart details, zoom in and out of the chart, show/hide chart panel. From the Charts panel, you can do the following: ●
Show/hide Charts panel Click the
icon located at the upper right corner of the Charts panel to show the charts panel. Click
to hide the Charts panel. ●
Zoom in/out of Charts You can zoom in or zoom out of a particular area of chart using the time-range picker.
Grab the handles on the X-axis time-range picker, it turns into a slider. Drag the slider across the Xaxis to define the time range that you want to zoom in. A chart is updated for the selected time. The following Line chart displays the zoomed in data for a specified time range and the Data panel shows the filtered results for the corresponding time range.
You can expand and collapse the time range by dragging the borders of the selected time range to the desired location. Once you define the time range, position the mouse inside the selected time range and drag the slider to define the new time range. Similarly, you can define a specific time by clicking on the chart. The time range can be adjusted at any time. As you adjust the time range on the chart, the Columns and the Data panels are adjusted automatically for the selected time range.
TIBCO LogLogic® Unity User's Guide
14
●
View Chart details Hover your mouse over a certain area of the chart to view the details.
●
Filter results based on the time range You can fine-tune your search results based on the time range. Click the event count (the line that represents the number of messages) on the chart or define the time range by zooming in on the chart to view results in the Data panel. A new filter is added for the defined time and the filtered results are displayed on the Data panel.
Columns Based on your search query, all available columns are displayed in the Columns panel. You can group together your results based on any column and the value associated with that column. Similarly, filtering helps you fine-tune your search results when analyzing big data. By default, three system columns are displayed to show results in the Data panel. For a list of system columns, see About Columns.
TIBCO LogLogic® Unity User's Guide
15 From the Columns panel, you can do the following: ●
Show/hide Columns panel Click panel.
●
located on the right corner to hide the Columns panel. Click
to show the Columns
Find columns You can quickly find the desired column by typing the column name in the Find field. As you start typing a column name in the Find field, all possible columns that start with the letters that are typed get displayed in the pane. The Columns panel is refreshed based on the selection.
●
Show or hide columns from the Data panel Select the check box to show the column in the Data panel. Clear the check box to hide the column from the Data panel. Click Select all to select all columns. Click Deselect all to hide all columns. The located on the left side of the column name defines that the column is displayed in the Data panel. The Data panel gets updated immediately based on your selection.
●
Expand column list Click located at the bottom of the column list to expand the column list. It allows you to view all columns retrieved from the data.
TIBCO LogLogic® Unity User's Guide
16
●
View column value details Click the column value and then select Show values to view the details of the selected value. The window displays a maximum 100 distinct values for the selected column. The Percent column is calculated using the maximum 100 distinct values. When the distinct values for a column exceeds 100, the Percent column is not displayed. If you filter on a particular column-value, then the percent value on the top will show the percentage of occurrence of this particular column-value in the entire result set. The following illustration displays values for the column sys_bodySize.
TIBCO LogLogic® Unity User's Guide
17
●
Group by values Click the column value and then select Group by to view grouped results. A new Result tab appears showing the results that are grouped by the column.
The following illustration displays results grouped by the column sys_bodySize.
You can group by different time ranges. Click the timestamp value, and select the Group Dates by option. From the list, select the option to group your results by different time periods. A new Result tab appears showing the results that are grouped by different time units.
TIBCO LogLogic® Unity User's Guide
18 You can aggregate columns that have Integers and Long values. Click the column value and select Add aggregation. Define how to group values in the aggregation column. The options are: SUM, MIN, MAX, AVG. A new column is added in the Data panel.
The following illustration displays a new aggregation column (SUM) gets added in the Data panel.
About Columns The system (event metadata) columns are indexed so searching is faster on the system columns. All system columns are displayed with the prefix sys_ and all columns from built-in parsers are displayed with the prefix ll_ in the column list. The following list describes all system columns in the LogLogic Unity event. Name
Type
Description
sys_eventTime
Timestamp
The UTC time of the event in Epoch milliseconds.
sys_body
String
The text of the message.
sys_bodySize
Integer
The size in number of bytes of the body.
sys_sourceType
Integer
TIBCO LogLogic® Log Management Intelligence (LMI) device type ID.
TIBCO LogLogic® Unity User's Guide
19
Name
Type
Description
sys_collectIP
InetAddress
The IP from where the event originated. This must support both IPv4 and IPv6.
sys_collectTime
Timestamp
The UTC time of the event when it was ingested into the LogLogic Unity event storage.
sys_filename
String
The file name for event collected from a file.
sys_fileLineNumber
Integer
The line number in file.
sys_tenant
String
The customer identifier.
sys_domain
String
The customer sub-identifier.
sys_partition
Long
The identifier of the portion of the data on the data node.
sys_offset
Long
The location in the LogLogic Unity event store.
sys_eventKey
String
A unique key that refers to an event in the LogLogic Unity store.
sys_lmiEventKey
String
A unique key that refers to an event in the LogLogic LMI event store.
sys_lmiApplianceId
String
An identifier for the LMI appliance.
sys_lmiDomain
Integer, String
The LMI Domain is a component of the LMI device (source) identifier.
sys_sourceDns
String
The DNS name for the event_source_ip.
Data Based on your search query, the retrieved data is displayed in the normalized tabular format. Each event is summarized per row. You can view data in the following three formats: ●
Raw Format
●
Table Format
●
Correlation Format
TIBCO LogLogic® Unity User's Guide
20 From the Data panel, you can do the following: ●
View event count The total number of retrieved events is displayed on the top right side.
●
Filter your results You can create a filter using the column value and message body text to fine-tune your search results. Click
●
to show or hide filters from the Data panel.
Add a new source configuration You can add a new source configuration that can be activated to analyze results in the Data panel. Click located on the top right side of the Data panel to add a new source configuration. For instructions on how to add source configuration, see Adding a Source Configuration.
●
Download your results You can share your search results with others. Click located on the top right side corner of the Data panel to download search results in the CSV format.
Raw Data Format Based on your search query, the results are displayed in Raw data format. Each message is summarized per row. The same result set can be viewed in the Table format. Using the Raw data format, you can do the following: The column value options are displayed in the following illustration.
●
Show/hide columns from the Raw data Click the Columns on / off link to show selected columns below the message or to hide columns to view messages in the raw format.
●
Wrap long messages Click the Wordwrap text on / off link to indicate if long messages should break at normal word break points or to display long messages.
TIBCO LogLogic® Unity User's Guide
21
●
Filter data Click the column value and select Include this Filter to filter the data based on the value. If you select Exclude this Filter, the results will exclude the specified value. The Data panel displays results immediately based on the defined filters. You can add multiple filters to fine-tune your search results. The following illustration displays the Raw data showing filtered results for the sys_bodySize: 611 value.
Click
to show or hide filters from the Data panel.
Click the column value and select Include this filter on Result tab to filter the data based on the value in a new Result tab. If you select Exclude this filter from Result tab, a new Result tab will display results excluding the specified value. The filters that are used in the current Result tab are not carried over in the new Result tab. You can filter based on the message body. Drag the mouse to select the message body and select Include this filter to filter your results based on the message body filter. If you select Exclude this filter the results will exclude the specified message body.
●
Sort columns You can sort on any column, including group-by count(*) column, group-by aggregation-columns, and other columns. Click the column value and then select Sort Ascending to sort columns in the ascending order. Click the column value and then select Sort Descending to sort columns in the descending order.
TIBCO LogLogic® Unity User's Guide
22
●
Group by values Click the column value and select Group by to view grouped results. A new Result tab appears showing grouped results for the selected value as shown below.
You can group by different time ranges. Click the timestamp value, then select Group Dates by option, and then select the option to group your results by different time periods. The Raw data view is refreshed showing the results that are grouped by defined time period. ●
Hide columns from the Raw data Click the column value and then select Hide to hide the selected column from the Raw data format.
Table Format Based on your search query, the results are displayed in normalized Table format. Each message is summarized per row. The same result set can be viewed in the Raw data format. Using the Table format, you can do the following:
TIBCO LogLogic® Unity User's Guide
23
●
View Messages in the Table format Click the Messages on / off link to show or hide the message body. Alternatively, hover over the message number link to display the message body.
TIBCO LogLogic® Unity User's Guide
24
●
Filter data Click the column value and then select Include this Filter to filter the data based on the value. If you select Exclude this Filter the results will exclude the specified value.
The Table view displays results based on the defined filters immediately. You can add multiple filters to fine-tune your search results. The following illustration displays the Table showing filtered results for the sys_sourceType: 65536 value.
Click
to show or hide filters from the Table panel.
Click the column value and then select Include this filter on Result tab to filter the data based on the value in a new Result tab. If you select Exclude this filter from Result tab, a new Result tab will display results excluding the specified value. The filters that are used in the current Result tab are not carried over in the new Result tab. You can filter based on the message body. To do this, make sure that the Messages on link is selected. Drag the mouse to select the message body and select Include this filter to filter your results based on the message body filter. If you select Exclude this filter the results will exclude the specified message body.
The following illustration shows results based on the message body filter Logon. TIBCO LogLogic® Unity User's Guide
25
●
Sort columns You can sort on any column, including group-by count(*) column, group-by aggregation-columns, and other columns. Click the column header and then select Sort Ascending to sort columns in the ascending order. Click the column value and then select Sort Descending to sort columns in the descending order.
TIBCO LogLogic® Unity User's Guide
26
●
Group by values Click the column header and then select Group By to view grouped results. A new Result tab appears showing the grouped results for the selected value as shown below.
You can group by different time range options using the Group Dates by option. Click the time value, then select Group Dates by option, and then select the period to group your results by different time periods. The Table panel is refreshed showing the results that are grouped by defined time period. ●
Hide columns from the Table Click the column header and then select Hide to hide the selected column from the Table panel.
Correlation Format The correlation search results are displayed every time the rule's conditions are met. A correlation Blok is created from a simple correlation rule. For detailed information on how to define correlation rules, refer to Event Correlation Language Reference. For detailed information about correlation Bloks, refer to About Correlation Bloks. 1. Type the correlation rule in the Search field. Alternatively, click located next to the Search field and select Choose Blok and then select the correlation Blok from the list.
TIBCO LogLogic® Unity User's Guide
27
2. Enter the time period in the Time field and click
.
The correlation results display all events that contributed to the triggering of the correlation rule. Based on the correlation rule, the columns (correlation events and event groups) are extracted in a table format. Each row helps you analyze the associated values of the columns and event groups. The following illustration displays the defined correlation rule in the Search field and retrieved events in the Charts, Columns, and Data panels.
3. Click the event count link to view the event details in a new Search tab. As shown in the above illustration, click 19 (the event count link), the new search tab opens with the auto-generated EQL query in the Search field for the events associated with that event count. The Charts, Columns, and Data panels display the results associated for that event count as shown below.
TIBCO LogLogic® Unity User's Guide
28
Search Syntax Reference LogLogic Unity search query language is intuitive and efficient, allowing you to search large data and view results in seconds. The search query mainly supports three types of languages: Event Query Language (EQL), Structured Query Language (SQL) dialect, and Event Correlation Language (ECL). Both EQL and SQL are equally capable for searching, but syntaxes are different in some cases. For example, simply providing a string in EQL is understood as a full text search, but it will give a syntax error in SQL. So the translation is not always literal. EQL is easy to use, however, SQL is more familiar and scripting is easy using existing SQL tools. Using EQL, you can define filters, regular expressions, sources, time ranges. ECL is useful to find patterns in a given set of data and used for correlation purposes.
Event Query Language Reference The search query supports two types of query languages: Event Query Language (EQL) and LogLogic Unity Structured Query Language (SQL) dialect. The EQL query is composed of different parts separated by pipe ( | ) character. The pipe delimiter is used to separate the expression and each subsequent expression. Each pipe-delimited expression further processes search results from the preceding expression. For more structured queries, subset of SQL is supported that is mainly focused on SELECT statement. Both languages can be used interchangeably, all that is available in EQL can be achieved via SQL and vice versa except the following two differences: ●
EQL supports the full text search statement, but SQL does not support this statement. For details, see Filter Statement.
●
Multiple EQL filter expression statements, separated by a pipe, get automatically combined using the AND operator into a single filter expression. SQL does not support this feature.
The EQL and SQL language rules are based on a Backus-Naur Form (BNF)-like notation as shown below:
::= ;
where, ●
non-terminal symbols in syntax rules have angle brackets (< >). For example, in the rule ::= "+" ; the is a non-terminal symbol and the rule specifies that as an expression is the addition of any number of integers.
●
terminal symbols are shown in double quotes (" "). For example, the "+" in the previous example.
●
as an additional shortcut notation to BNF, optional symbols (that can occur zero or one times) are followed by a question mark (?). For example, in the rule ::= (ASC| DESC)?; a column name used for sort is a column name optionally followed by the keywords ASC or DESC.
●
optional symbols that can occur zero or any number of times are followed by an asterisk (*). For example, in the rule ::= - (","
- )*; an itemList can contain one or more comma separated items.
●
multiple symbols are grouped together using parenthesis ( ) when some common operation is applied, for example, the selection of one member of the group, or to indicate that the entire group can be repeated zero or more times. An example is shown in the previous bullet item.
●
words that are all capitalized represent keywords (special terminal symbols). For example, the keywords ASC and DESC in the column name for sort described in the previous example.
All parts of the query are optional but the overall the syntax is as shown below: ::= ("|" )* ;
TIBCO LogLogic® Unity User's Guide
29 ::= | | | | | ;
String literals and identifiers (including keyspace, column family names, and source configuration names) are case-sensitive but all EQL keywords are case-insensitive. For example, 'USE Windows' and 'use Windows' are treated in the same way. String literal can be quoted with single (') or double (") quotes. The quotes (single or double) inside the string literal has to be prefixed with backslash ( \ ) character. The \ character change to be prefixed with another backslash ( \\ ). For example, "Mike's car" or 'Mike\'s car'. A special syntax for time range can be used. For details, see Time Range Expressions. In this syntax reference topic, EQL keywords in UPPERCASE are used as a convention for easy readability. Examples Expression
Definition
sys_sourceType = 65536 and sys_eventTime
Events from source type '65536' in last 5 days, display result as a table with columns sys_eventTime, sys_collectIP, ll_eventStatus, and ll_type.
in -5d | columns sys_eventTime, sys_collectIP, ll_eventStatus, ll_type
use Microsoft_Windows | severity = 'Critical' and user = "Fred" and sys_eventTime in -1M | group by vm
Using the source configuration Microsoft Windows, display results of all critical events for a given user per virtual machine in last month.
columns count(*)
Common Search Commands LogLogic Unity uses the following search commands. Command
Definition
USE
Defines the event sources which includes the parsing configuration. For details, see USE Statement.
COLUMNS
Defines which columns should appear in search results. For details, see COLUMNS Statement.
GROUP BY
Groups search results based on specified columns. For details, see GROUP BY Statement.
SORT BY
Sorts search results based on the expression. For details, see SORT BY Statement.
LIMIT
Limits the size of search results to be displayed. For details, see LIMIT Statement.
For detailed information about filters, see Filter Statement.
TIBCO LogLogic® Unity User's Guide
30
USE Statement A source is the name of the log source from which a particular event originates. The source defines which logs from which log sources to parse, how to parse them, and what column to extract in order to execute this query. The USE defines the event log sources which includes the parsing configuration. This is an optional parameter but it is recommended to improve performance by reducing the set of event sources and set of parsers used. ::= "USE" ( "," )* ;
The USE statement consists of the USE keyword followed by one or many source configuration names separated by commas. An is a letter followed by any sequence of letters, digits, or an underscore (_). If you do not specify any source configuration in the Search field, the results will be retrieved in this order: first all enabled LogLogic built-in source configurations, next all enabled log sources that are non-LogLogic specific but have source filters defined, and lastly the system log source. The user defined source configurations without the source filter will not be included in the search query. For a detailed list of built-in source configurations, see Supported Log Sources. For more information about source configurations, see Manage Source Configurations. Examples Source Configuration Expression
Definition
use Windows
The result will display all events from Windows sources.
use Windows, Cisco
The result will display all events from Windows and Cisco log sources.
FILTER Statement A filter is an expression that specifies the conditions that events must satisfy to be returned by this query. The filter criteria can be in form of free text search of the entire body or value of a particular preparsed or parsed column. The system (event metadata) columns are indexed so searching is faster on the system columns. The list of available columns is determined by list of event sources. In case the list of event sources are not available, the system will do the best to extract those columns using heuristics algorithms. For queries, the filter should contain a time condition, otherwise the default is used. A filter statement is any expression that evaluates to a result of type boolean. Any event that does not satisfy this condition will be eliminated from the results. An event satisfies the condition if it returns true when the actual event values are substituted for any variable references. The following table explains the types of filter statements that can be used. For the complete syntax, shown as a BNF grammar, see Filter Syntax.
TIBCO LogLogic® Unity User's Guide
31
Statement / Operator
Description
AND
Narrows your search results by only returning those events where each one of the AND conditions evaluates to true. For example, use AND to return results containing all specified keywords. When AND is used, the results contain all specified keywords and do not contain entries with just one of the specified keywords.
OR
Expands your search results by returning events where either of the OR conditions evaluates to true. For example, use OR to return results containing any and all specified keywords. OR is ideal when you have common synonyms for a keyword. To narrow results as much as possible, combine OR statements with AND statements.
Full text search
Full text search on the body of each event can be performed by simply providing the phrase that needs to be enclosed in double quotes. For example, use system | "authentication failed" will retrieve all events that contain the above phrase. The EQL full text search (specifically on sys_body) is exactly the same as the SQL LIKE statement on the sys_body (so "use system | 'Bob'" is exactly the same as "select * from system where sys_body LIKE 'Bob'").
Equals (=), Not equals (<> ), (!=), Lower than (<), Lower or equal (<=), Greater than (>), Greater or equal (>=) Plus (+), Minus (-), Multiply (asterisk (*)), Divide (forward slash (/),
A comparison condition compares two expressions using the operator specified in the comparison, which may be one of seven possible comparison operators with well known meanings. The comparison condition evaluates to true only if the comparison condition is satisfied. This may be used to narrow search results. For example, "col1 > col2/100". The arithmetic (+,-,*,/) and string concatenation (||) operators can be used to create parts of other conditions. For example, "column1 + column2 < 5" or "col3 * 4 - 1000 > col5"
String concatenation (||)
TIBCO LogLogic® Unity User's Guide
32
Statement / Operator
Description
Function
Any of a set of predefined functions. For details, see Predefined Functions. They can be only used in Filter expressions or as part of Source Configuration expressions. The parameters of the functions can be expressions themselves and will be evaluated before the function is called. For example, "ToInt(col1 + col2)" will add the contents of the columns of the event named col1 and col2, and pass the result to the ToInt function and the result of the function will be used.
BETWEEN
Narrows your search results by only selecting those events where the left hand side expression evaluates to a value that is between the two right hand side target expressions. Supports Timestamps, Long, and Integers. For time range syntax details, see Time Range Expressions.
IN
Narrows your search results. Checks if value matches any one of the values in a set. For example, "eventID IN ('id1', 'id2', 'id3')". Supports all data types. For time range syntax details, see Time Range Expressions.
IS NULL, IS NOT NULL
Narrows your search results by accepting or rejecting the event based on whether the evaluated expression is null or not null. An expression most frequently becomes null if a column named in the expression has no value for the current event. Supports all data types.
TIBCO LogLogic® Unity User's Guide
33
Statement / Operator
Description
LIKE, NOT LIKE
Expands your search results. Returns true if it matches the supplied pattern. The sys_body column is special, because the supplied pattern is used to do a full text search on the event body. For all other columns, the following rules are used to interpret the supplied string. ●
The character percent (%) is the wildcard character (matches zero or more characters).
●
The character underscore (_) means that it matches exactly one character.
●
The backslash character (\) is used to escape itself and the above two characters if a literal search for any is desired.
The LIKE statement for columns starting with sys_ uses a full text search, not SQL LIKE syntax. Since string literals in EQL/SQL require backslashes (\) to be escaped, note that additionally escaping for the LIKE statement doubles the escaping requirement. The simple rule to follow is to construct the match string using the above rules, then simply double up each backslash. The following examples show the actual syntax ( not the escaping needed for Java): ●
col1 LIKE "a_b" - produces a match for "acb", "adb" and so on
●
col1 LIKE "a\\_b" - produces a match for "a_b" but not "acb". Note the double backslashes.
●
col1 LIKE "a\\\\_b" - produces a match for "a\cb" and "a\db"
●
col1 LIKE "a%b" - produces a match for "ab", "acb", "accb" and so on
●
col1 LIKE "a\\%b" - produces a match for "a %b" but not "acb"
TIBCO LogLogic® Unity User's Guide
34
Statement / Operator
Description
REGEXP, NOT REGEXP
Narrows your search results. Returns true if it matches the supplied pattern. The pattern syntax uses POSIX syntax. Since string literals in EQL/SQL require backslashes (\) to be escaped, note that all the backslashes inside a regular expression pattern must be doubled up, similar to the LIKE statement. Examples: ●
col1 REGEXP "[a-z]b" - produces a match for "ab", "cb" but not "Ab" or "_b"
●
col1 REGEXP "\\w*" - produces a match for a word, for example "this" or "that", but not "this and that"
Examples Filter Expression
Definition
"Authentication" and sys_eventTime in
The result will display all events that contain Authentication from last 1 year.
-1y use sample | ll_sourceUser = 'SiteSvrAdmin' | sys_eventTime in '2014-02-02'
The result will display all events that contain column 'll_sourceUser' and value is 'SiteSvrAdmin' on the 2nd of February 2014.
Predefined Functions The functions that are available in the EQL are listed below. The smart list functions are usually used in filter expressions and source configuration. The conversion functions are typically used when adding a new source configuration, when you need to define new columns, where the expressions for new columns can use conversion functions to convert between data types and combine them using various operators. For instructions on how to add a new source configuration, see Adding a Source Configuration. Function Name
Arguments
Returns
(String 1, String 2)
The value associated with String2 in the smart list named String1.
Smart List functions lookup
Example: lookup("list1", "key1") or $list1("key1")
TIBCO LogLogic® Unity User's Guide
35
Function Name
Arguments
Returns
length
(expression)
Returns the length of the string value of the evaluated expression. If the expression is not a string, for example, an integer, it will convert it to a string first. Example: length("abc") is 3, length(3145) is 4 (after converting the integer 3145 to the string "3145")
Conversion functions ToTimestamp
(expression, formatString) or (expression, formatString, timezone) or (expression, formatString, timezone, defaultValue)
The expression, which should evaluate to a string, is interpreted as a time according to the supplied formatString. If the conversion fails, null is returned, unless a default string is provided, which is interpreted as a time and returned. Example: ToTimestamp( logFileStringTi mestampField, "dd, MM, yyyy HH:mm:ss", "America/ Los_Angeles", "01, 01, 1970 00:00:00") If timezone is omitted or is empty, the system default timezone is used.
ToIP
(expression) or (expression, defaultValue)
Convert the expression to an IP address (Java InetAddress). If the conversion fails, null is returned, unless a default string is provided, which is interpreted as an IP address and returned. Example: ToIP(ipAddressField, "www.oracle.com")
TIBCO LogLogic® Unity User's Guide
36
Function Name
Arguments
Returns
ToTimestampString
(expression, formatString) or (expression, formatString, timezone) or (expression, formatString, timezone, defaultValue)
Same as ToTimestamp, except it gets converted to string to get a printable timestamp. Example: ToTimestampString(timestamp , "dd, MM, yyyy HH:mm:ss", "America/Los_Angeles", "01, 01, 1970 00:00:00") If timezone is omitted or is empty, the system default timezone is used.
ToInt
(expression) or (expression, defaultValue)
The obvious conversion to integer with default value taken if not convertible. Example: ToInt("1348") or ToInt(numberField, 0)
ToLong
(expression) or (expression, defaultValue)
The obvious conversion to Long with default value taken if not convertible. Example: ToLong("1348") or ToLong(numberField, 0)
ToString
(expression) or (expression, defaultValue)
The obvious conversion to String with default value taken if not convertible. Example: ToString(124.5) or ToString(numberField, "null")
ToFloat
(expression) or (expression, defaultValue)
The obvious conversion to Float with default value taken if not convertible. Example: ToFloat("1348.2") or ToLong(numberField, 0.0)
ToBool
(expression) or (expression, defaultValue)
The obvious conversion to Boolean with default value taken if not convertible. Example: ToBool("FALSE") or ToBool(col1, FALSE)
Time Range Expressions The time range for IN operator understands both relative time as well as absolute time. Absolute time is the same as in BETWEEN operator. Relative time is defined as: , for example: -5d means 5 days ago.
TIBCO LogLogic® Unity User's Guide
37 All dates and times are defined in the local time zone of the machine where the system is installed and it is not based on the browser time zone. The following time units are available: ●
s - second
●
m - minute
●
h - hour
●
d - day
●
w - week
●
M - month
●
q - quarter (3 months)
●
y - year
The supported timestamp formats are: ●
Any day of the week; for example, MON, TUE, WED, THU, FRI, SAT, SUN
●
NOW specifies up to the current time
●
Today specifies as the end of the day (23:59:59)
●
yyyy-MM-dd HH:mm:ss
●
MM/dd/yyyy HH:mm:ss
●
BETWEEN and IN supports also dates (yyyy-MM-dd or MM/dd/yyyy), the interpretation depends if it is used as beginning or end of time period. When used in beginning it is equivalent to yyyyMM-dd 00:00:00, when used at the end - yyyy-MM-dd 23:59:59.
Examples Time Range Expression
Definition
-5d
Last 5 days including today.
-1M
Last month.
"2014-10-20"
From 2014-10-20 00:00:00 and 2014-10-20 23:59:59.
"2014-10-20":"2014-10-25"
From 2014-10-20 00:00:00 until 2014-10-25 23:59:59.
"2014-10-20 14:00:00":"2014-10-25
From 2014-10-20 14:00:00 until 2014-10-25 20:00:10.
20:00:10" "2014-10-20 14:00:00":NOW
From 2014-10-20 14:00:00 until now (the time the query was issued).
MON:NOW
From beginning of last Monday till the current time.
TIBCO LogLogic® Unity User's Guide
38
COLUMNS Statement COLUMNS is used to define which columns should appear in the results and how they should be computed. ::= "COLUMNS" | ; ::= ( "," )* ; ::= ( "," )* ;
A COLUMNS statement can be the name of a column or it can be an aggregate function formed from column values. The following data types of columns are supported: ●
String
●
Integer
●
Long
●
Double
●
Boolean
●
Timestamp
●
IP address
If all columns use aggregation functions, the result will contain only one row with results of the aggregation. For grouping details, see GROUP BY Statement. Examples Columns Expression
Definition
columns sys_eventTime, ll_collectIP,
The result will be a table with 3 columns: sys_eventTime, ll_collectIP, sys_body. The columns could be one of the pre-parsed columns like sys_eventTime, sys_body etc. or columns from configured parsers. See USE Statement.
sys_body
columns count(ll_sourceUser)
The result will have one column with one row with count of all events that has ll_sourceUser column with no empty value.
GROUP BY Statement Grouping can be used to group values by given column or columns. Grouping requires list of grouping columns and the list of aggregation columns. A group by expression can be a column name, and optional list of aggregation functions after COLUMNS keyword. ::= "GROUP BY" ( "," )* )? (COLUMNS ("," )* )?;
The following aggregation functions are supported: ●
COUNT(*): Count all the rows
●
COUNT(columnName): Count all the rows in which the value of the column is not null
●
COUNT(DISTINCT columnName): Count all distinct values from the column
TIBCO LogLogic® Unity User's Guide
39
●
SUM(column): Sum all values from the column. Supports numerical types (Integer, Long, Double)
●
AVG(column): Provide average value for the column. Supports numerical types (Integer, Long, Double)
●
MIN(column): Smallest value of the column. Supports all data types that can be ordered (Integer, Long, Double, Timestamp, String)
●
MAX(column): Largest value of the column. Supports all data types that can be ordered (Integer, Long, Double, Timestamp, String)
●
DURATION(timestamp): Returns the difference (in milliseconds) between the latest and the earliest time. Supports Timestamp only.
An optional COLUMNS statement can be included to indicate additional input columns that should be added to the results even though they are not used to form groups. Examples Grouping Expression
Definition
group by ll_sourceUser count(*)
The result will have two columns, the ll_sourceUser and count of users per distinct value.
group by ll_sourceUser columns
The result will have 4 columns ll_sourceUser, number of users for each distinct value of source user, minimum value of sys_eventTime and maximum value of sys_eventTime.
count(ll_sourceUser), min(sys_eventTime), max(sys_eventTime)
group by ll_sourceUser columns Duration(sys_eventTime)
The result will have 2 columns, the source user and the duration.
SORT BY Statement SORT BY causes the result rows to be sorted according to the specified expressions. By default, results are sorted in ascending order. ::= "SORT BY" ( "," )* ;
A SORT BY expression can be the name of a column. If two rows are equal according to the leftmost expression, they are compared according to the next expression and so on. If they are equal according to all specified expressions, they are returned in an implementation-dependent order. The following functions are supported: ●
ASC: Sort results in the ascending order. This is the default order.
●
DESC: Sort results in the descending order.
Examples Sorting Expression
Definition
sort by sys_eventTime ASC
The result will be sorted by time in ascending order.
TIBCO LogLogic® Unity User's Guide
40
Sorting Expression
Definition
sort by ll_sourceUser, sys_eventTime
The result will be sorted by ll_sourceUser in ascending order (default), in case ll_sourceUser is the same, sort by sys_eventTime in descending order.
DESC
LIMIT Statement LIMIT indicates the maximum number of results that should be returned by the query. ::= "LIMIT" ;
If you do not specify a LIMIT clause in the query, the default limit will be used. The default limit is set to 10,000. Example Limits Expression
Definition
limit 100
Limits the result set to top 100 rows.
Search Examples SQL Expression
EQL Expression
Definition
select sys_eventTime,
use sample | columns
sys_body from sample
sys_eventTime, sys_body |
where sys_eventTime
sys_eventTime in TUE:WED
Displays results from the sample source configuration where the records have the timestamp between '2014-02-02' (TUE) and '2014-02-03' (WED).
between '2014-02-02' and '2014-02-03' select * from sample
use sample |
where sys_body like
"Authentication" and
'%Authentication%' and
sys_eventTime between
sys_eventTime between
'2014-02-03' and
'2014-02-03' and
'2014-02-03'
Displays results from the sample source configuration with "Authentication" in the message body.
'2014-02-03' select * from sample
use sample | sys_body like
where sys_body like
'%logon%' | limit 10 |
'%logon%' and
sys_eventTime in -10y
Demonstrates an example of a 'like' statement to display a limit of 10 results.
sys_eventTime between '2014-02-03' and '2014-02-03' limit 10 select * from sample
use sample | sys_eventKey
where sys_eventKey REGEXP
REGEXP '[a-z0-9|]*' |
'[a-z0-9|]*' and
sys_eventTime in -1y |
sys_eventTime in -1y
limit 10
Demonstrates an example of the REGEXP expression matching.
limit 10
TIBCO LogLogic® Unity User's Guide
41
SQL Expression
EQL Expression
Definition
select * from sample
use sample |sys_eventTime
where sys_eventTime
between '2014-02-03' and
between '2014-02-02' and
'2014-02-03' | sort by
'2014-02-03' order by
sys_eventTime DESC
Displays events sorted by time for records having timestamp for the specified dates in the descending order.
sys_eventTime DESC select * from sample
use sample |sys_eventTime
where sys_eventTime
between '2014-02-03' and
between '2014-02-02' and
'2014-02-03' | sort by
'2014-02-03' order by
sys_eventTime DESC | limit
sys_eventTime DESC offset
100
Displays top 100 results for records sorted by time in the descending order.
0 limit 100 select sys_eventTime,
use sample | sort by
sys_body from sample
sys_eventTime DESC | LIMIT
where sys_eventTime
100
Display sorted first page of results for events ordered by time in descending order.
between '2012-02-14 14:34:34' and '2012-03-14 12:00:00' ORDER BY sys_eventTime DESC OFFSET 0 LIMIT 100
Displays grouped results based on the source users.
select ll_sourceUser,
use sample | group by
count(*) from sample
ll_sourceUser columns
where sys_eventTime
ll_sourceUser, count(*) |
between '2014-02-02' and
sys_eventTime between
'2014-02-03' group by
'2014-02-02' and
ll_sourceUser
'2014-02-03'
select ll_sourceUser,
use sample | group by
max(sys_eventTime),
ll_sourceUser columns
min(sys_eventTime),
max(sys_eventTime),
count(*) from sample
min(sys_eventTime),
where sys_eventTime
count(*) | sys_eventTime
between '2014-02-02' and
in -10y
Displays the count of rows for distinct source users and its corresponding maximum timestamp and minimum timestamp.
'2014-02-03' group by ll_sourceUser
Event Correlation Language Reference LogLogic Unity Event Correlation Language (ECL) is very useful to find patterns in a given set of log. ECL is able to describe searches that are little complex for the regular EQL, especially when there is a need to join several types of events. Rules described in ECL can be used for advanced forensics searches and also for real-time alerting.
TIBCO LogLogic® Unity User's Guide
42
Rule Structure A rule describes a pattern to look for within a given time window. It contains a list of event group definitions (at least one), and the correlation criteria that are used to join those event groups (if there is more than one event group). A rule can also be valid for only a given period of time. All mandatory parameters are explained below. The optional parameters are in square brackets [ ]. Valid From yyyy-MM-dd hh:mm:ss To yyyy-MM-dd hh:mm:ss ) ] [ ] USE