twlog-who-said

command module
v0.3.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 22, 2024 License: MIT Imports: 22 Imported by: 0

README

twlog-who-said

twlog-who-said is a small utility that analyzes Teeworlds log files in order to determine who said a specific phrase. This is useful for determining a list of ip addresses of spam bots based on a specific phrase they use.

installation

Download the executable from the releases page or install it using the Go toolchain:

go install github.com/jxsl13/twlog-who-said@latest

usage

$ twlog-who-said --help
Environment variables:
  PHRASE_REGEX       regex to search for that a player said
  SEARCH_DIR         directory to search for files recursively (default: ".")
  FILE_REGEX         regex to match files in the search dir (default: ".*\\.log$")
  DEDUPLICATE        deduplicate objects based on all fields (default: "false")
  EXTENDED           add two additional fields, file and id to the output (default: "false")
  IPS_ONLY           only print IP addresses (default: "false")
  OUTPUT             output format, one of 'json' or 'text' (default: "text")
  ARCHIVE_REGEX      regex to match archive files in the search dir (default: "\\.(7z|bz2|gz|tar|xz|zip|xz|zst|lz)$")
  INCLUDE_ARCHIVE    search inside archive files (default: "false")
  CONCURRENCY        number of concurrent workers to use (default: "{{number of cpu cores}}")

Usage:
  twlog-who-said [flags]

Flags:
  -a, --archive-regex string   regex to match archive files in the search dir (default "\\.(7z|bz2|gz|tar|xz|zip|xz|zst|lz)$")
  -t, --concurrency int        number of concurrent workers to use (default {{number of cpu cores}})
  -c, --config string          .env config file path (or via env variable CONFIG)
  -D, --deduplicate            deduplicate objects based on all fields
  -e, --extended               add two additional fields, file and id to the output
  -f, --file-regex string      regex to match files in the search dir (default ".*\\.log$")
  -h, --help                   help for twlog-who-said
  -A, --include-archive        search inside archive files
  -i, --ips-only               only print IP addresses
  -o, --output string          output format, one of 'json' or 'text' (default "text")
  -p, --phrase-regex string    regex to search for that a player said
  -d, --search-dir string      directory to search for files recursively (default ".")

example:


# get all information about the players that said the phrase 'https?://bot.xyz\..+'
./twlog-who-said -e -p 'https?://bot.xyz'

# get all information of all players that said the phrase 'https?://bot.xyz\..+' but deduplicate all entries
./twlog-who-said -e -D -p 'https?://bot.xyz'

# get all deduplicated ip addresses of all players that said the phrase 'https?://bot.xyz\..+'
./twlog-who-said -D -p 'https?://bot.xyz' -i -o json

building and installing from source

# building
go build .

# installing
go install .

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL