FuzzyLAS

fuzzyLAS is a fuzzy search for log mnemonics. Version 0.3 is now live. Given a mnenonic (any string, upper or lower case, letters or numbers), it returns the best guess from its database.

There are two ways to interact with the app: go to the home page and use the form; or use the web API.

Why do we need a tool like this?
The SPWLA already has something a bit like this, e.g. Search for RHOB.

The problem is their app only returns an HTML table, spread over several pages. It would be hard to use this output in a spreadsheet or mobile app, say. We would prefer a machine-readable format like JSON.

Their tool does have some nice features (eg filters, and sorting), but only does literal ‘contains’ searching (as far as I can tell), and the database could use cleaning (eg units have multiple names).

Unlike the SPWLA tool, this web app is not really supposed to be used on its own. The idea is to use it as a service inside other applications, e.g. a log curve manager, or a mobile phone lookup app.

How to use the web API
Example: http://fuzzylas.appspot.com/lookup?mnemonic=TEST&method=fuzzy&guesses=5


 * mnemonic can be any string; it will be converted to uppercase so it is case insensitive.
 * method can be exact (only returns if exact match found), simple (a plain Levenshtein distance implementation), or fuzzy (default, a more sensitive fuzzy search, see below).
 * format can be json, csv, or list (default — comes back as a Python list).
 * guesses should be set to the integer number of guesses you want, default 1. No maximum. The guesses are rather arbitrary with the simple method (because it uses a coarse measure of similarity), so you should probably stick to the default if you want the simple process.

Features and limitations
The fuzzy option uses the fuzzywuzzy library — it is also a Levenshtein implementation, but it is using some different selection metrics.

The app is really slow when it has to hit the data dictionary and the mode is fuzzy.