Questions? Here are the answers!
Retrospective emerged from our daily work with log data, including challenging tasks in the domain of DevOps and production support.
Local log files on your machine are directly accessed via the file system. Log files on remote hosts are fetched over SSH using standard Unix/Linux commands like grep, awk, sed, etc. Retrospective applies search arguments on the remote hosts in order to limit the data sent over the wire.
Retrospective uses the "docker" and "kubectl" commands to fetch log data from containers that write to the standard output stream. These tools must be installed and properly configured on your machine. Both searching and monitoring is possible. Naturally the monitoring function is the primary use case for container logs because usually there are only a couple of megabytes of log kept back by Docker or Kubernetes.
The "Search" function filters and fetches existing log data from files or containers. The "Monitor" function filters and fetches log data as it is produced (similar to the "tail" Unix/Linux command). Both functions filter the data with user-defined search criteria. When searching or monitoring log data from files on remote SSH servers, only the filtered data is transferred to the local computer.
Yes, for example consider monitoring log files from batch processes that send events to Kubernetes pods. You can have a Retrospective profile that merges data from remote log files with the logs from Kubernetes pods in a single, unified view.
When the collected log data kept in memory exceeds a certain limit, Retrospective writes excess data to disk storage. When the data is needed (i.e. when you’re viewing a different chunk of log data), the information is read back from disk. All this happens in a transparent way in the background through a set of options. The user is granted full control over Retrospective’s memory and disk storage usage.
The most common uses cases we have seen for Retrospective are:
1. You need ad-hoc capabilities for log search and monitoring without fuss. No installation of log collecting agents, index databases and server components is required for Retrospective.
2. Results are available immediately in Retrospective, without the time delay of central data collection.
3. Retrospective can help you during software development by providing log data merging and structuring capability when running local tests with multiple containers, Kubernetes or Docker Swarm development setups, and log files.
4. Sometimes not all or not enough volume of log data is collected and indexed in an existing log management infrastructure. It may be that you are the only person who needs those logs, or the volume pricing for log ingestion is too high. There are cases where log collection and indexing is not always feasible, examples are IoT (Internet of Things) or embedded computing.
5. Retrospective offers a quality desktop windowing environment using the native GUI widgets of your machine that is highly configurable and works well on multiple high-res monitors.
6. Grokking log data is a good reason to justify buying a new high-end laptop.
Retrospective analyses log data and proposes detected name/value pairs in order to show them in dedicated columns of the result table. You can use those automatic definitions or create your own detection criteria based on split characters or Regex patterns. Retrospective also lets you use existing log level definitions and create new ones. Every such definition specifies how individual log entries shall be interpreted by Retrospective in order to find/extract the appropriate log level. It also contains information on how log entries with an assigned log level shall be displayed in the result table.
Result Highlighting means emphasizing specific elements in the log data by using different colors. Retrospective automatically highlights texts based on predefined highlighting sets for currency, date/time patterns, name/value pairs and others. Additionally you can define highlighting criteria on the fly or define your own persistent sets that can be reused at any time later.
• Retrospective features local filtering and columns manipulation, JSON/XML formatting and context diving.
• The data can be exported to text, CSV, Excel or JSON files.
• Result data can be exported to Koia.io for further analysis.
• Snapshots (immutable copies) of the result data may be created at any time and be reused in the feature.
We are interested in learning about other possible export capabilities or integrations, if you have an interesting use case then please drop us a line.
If you download Retrospective with a bundled JRE (Java Runtime Environment) then you don’t have to worry about this. If you download Retrospective without a bundled JRE, then please make sure that you have a suitable JRE installed on your computer by entering "java -version" in a command window. The java version should be the same as (or newer than) the version indicated on our website. We recommend using the Retrospective version with a bundled JRE.
You get one year's worth of upgrades (functionality and bug fixes) for free with your first year's subscription. After that, you can continue the upgrade program with a discounted price.
Send us a bug report together with your license key.
We want to make Retrospective the best software product for personal log data grokking and we're keen to implement new features that add value to Retrospective. If there's something you'd really like, let us know, and we'll take a look at it.
Since version 5.6, Retrospective is available for all platforms (Windows, Mac and Linux) only as a 64-bit version.
You can install different versions by using different directories. However, you cannot run the Retrospective instances simultaneously.
Yes, Retrospective supports pretty much all character encodings that exist on the planet. In most cases, the correct encoding is automatically detected.
Retrospective enables batch editing hosts definitions. Simply select desired hosts definitions and change authentication information on all of them at once.
Retrospective can import hosts definitions from PuTTY. The passwords are not imported automatically. Retrospective has an SSH console built in, so you can stay in one environment for your work.
Yes, Retrospective allows client certificates, several sudo and su combinations and the use of SSH jump hosts.
There is support for selecting pods by labels with most of the Kubernetes selectors like "equals", "in", "not in", etc.
Retrospective features search results highlighting based on log entry severity (CRITICAL, WARNING, INFO) or on user defined terms. Therefore it's hard to miss important information.
Retrospective analyses a small amount of log data from the beginning and the end of a file. The analyzed information lets the program find out whether individual files contain data that is located within the time period specified in the time search criteria. All files with log entry dates outside of this period are excluded from the search process.
Retrospective features search definitions bookmarking, allowing to store given search parameters and execute them later with a single click. Additionally, a layout of multiple result windows on multiple high-resolution monitors can be saved as a Retrospective view and later be restored.