All Projects → logzio → sawmill

logzio / sawmill

Licence: Apache-2.0 License
Sawmill is a JSON transformation Java library

Programming Languages

java
68154 projects - #9 most used programming language

Projects that are alternatives of or similar to sawmill

Th3inspector
Th3Inspector 🕵️ Best Tool For Information Gathering 🔎
Stars: ✭ 1,041 (+1031.52%)
Mutual labels:  user-agent, geoip
MaxMind-DB-Writer-perl
Create MaxMind DB database files
Stars: ✭ 63 (-31.52%)
Mutual labels:  geoip, maxmind
geoip2
GeoIP2 Reader for Go
Stars: ✭ 54 (-41.3%)
Mutual labels:  geoip, maxmind
lua-resty-maxminddb
A Lua library for reading MaxMind's Geolocation database
Stars: ✭ 72 (-21.74%)
Mutual labels:  geoip, maxmind
MaxMind-DB-Reader-python
Python MaxMind DB reader extension
Stars: ✭ 131 (+42.39%)
Mutual labels:  geoip, maxmind
Geoip2 Php
PHP API for GeoIP2 webservice client and database reader
Stars: ✭ 1,956 (+2026.09%)
Mutual labels:  geoip, maxmind
pf-azure-sentinel
Parse pfSense/OPNSense logs using Logstash, GeoIP tag entities, add additional context to logs, then send to Azure Sentinel for analysis.
Stars: ✭ 24 (-73.91%)
Mutual labels:  geoip, maxmind
geoip2-rs
Fast GeoIP2 Reader for Rust
Stars: ✭ 25 (-72.83%)
Mutual labels:  geoip, maxmind
GeoLite2-Country
GeoLite2-Country.mmdb.gz CDN files based on Free Open Source CDN jsDelivr!
Stars: ✭ 69 (-25%)
Mutual labels:  geoip, maxmind
GeoIP2-perl
Perl API for MaxMind's GeoIP2 web services and databases
Stars: ✭ 18 (-80.43%)
Mutual labels:  geoip, maxmind
MaxMind-DB-Reader-ruby
Ruby reader for the MaxMind DB Database Format
Stars: ✭ 35 (-61.96%)
Mutual labels:  geoip, maxmind
mmdbwriter
Go library for writing MaxMind DB (mmdb) files
Stars: ✭ 44 (-52.17%)
Mutual labels:  geoip, maxmind
GeoLite2-City
GeoLite2-City.mmdb.gz CDN files based on Free Open Source CDN jsDelivr!
Stars: ✭ 170 (+84.78%)
Mutual labels:  geoip, maxmind
GeoIP2-ruby
Ruby API for GeoIP2 webservice client and database reader
Stars: ✭ 41 (-55.43%)
Mutual labels:  geoip, maxmind
MaxMind-DB-Reader-java
Java reader for the MaxMind DB format
Stars: ✭ 88 (-4.35%)
Mutual labels:  geoip, maxmind
nodejs-geoip2ws
Maxmind GeoIP2 Web Services for Node.js
Stars: ✭ 47 (-48.91%)
Mutual labels:  geoip, maxmind
open-development-template
Workflow and documentation templates that help teams formalize their goals, workflow and governance model to encourage participation and field contributions.
Stars: ✭ 18 (-80.43%)
Mutual labels:  opensource
opensource
Olist Open Source Projects
Stars: ✭ 37 (-59.78%)
Mutual labels:  opensource
awesome-mentors
List of people interested in helping you in getting started with open source contribution or your own projects
Stars: ✭ 31 (-66.3%)
Mutual labels:  opensource
kafka-connect-iot-mqtt-connector-example
Internet of Things Integration Example => Apache Kafka + Kafka Connect + MQTT Connector + Sensor Data
Stars: ✭ 170 (+84.78%)
Mutual labels:  opensource

Sawmill Logo

Build Status Maven Central

Update: June 25, 2020 The 2.0 release of Sawmill introduces a breaking change to the GeoIpProcessor to comply with the updated license of the MaxMind Lite database. See https://github.com/logzio/sawmill/wiki/GeoIp-Processor for additional details.

Sawmill is a JSON transformation open source library.

It enables you to enrich, transform, and filter your JSON documents.

Using Sawmill pipelines you can integrate your favorite groks, geoip, user-agent resolving, add or remove fields/tags and more in a descriptive manner, using configuration files or builders, in a simple DSL, allowing you to dynamically change transformations.

Download

Get Sawmill Java via Maven:

<dependency>
    <groupId>io.logz.sawmill</groupId>
    <artifactId>sawmill-core</artifactId>
    <version>2.0.13</version>
</dependency>

or Gradle:

compile 'io.logz.sawmill:sawmill-core:2.0.13'

Documentation

The full Sawmill documentation can be found here.

Simple configuration example

{
  "steps": [
    {
      "grok": {
        "config": {
          "field": "message",
          "overwrite": [
            "message"
          ],
          "patterns": [
            "(%{IPORHOST:client_ip}|-) %{USER:ident} %{USER:auth} \\[%{HTTPDATE:timestamp}\\] \\\"(?:%{WORD:verb} %{NOTSPACE:request}(?: HTTP/%{NUMBER:httpversion:float})?|%{DATA:rawrequest})\\\" %{NUMBER:response:int} (?:%{NUMBER:bytes:float}|-) B %{DATA:thread} %{NUMBER:response_time:float} ms %{DATA:servername} %{DATA:client_id:int}(\\;%{NOTSPACE})? %{DATA:device_id} %{DATA}"
          ]
        }
      }
    },
    {
      "removeField": {
        "config": {
          "path": "message"
        }
      }
    }
  ]
}
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].