mod_log_json/README.markdown
author Kim Alvefur <zash@zash.se>
Wed, 13 Nov 2019 17:51:08 +0100
changeset 3749 e43a82ddde12
parent 3740 3784bbcbb8ff
child 3750 bc865568ff02
permissions -rw-r--r--
mod_log_json/README: Add a sentence about the first example
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
3739
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
     1
---
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
     2
summary: JSON Log Sink
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
     3
---
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
     4
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
     5
Conifiguration
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
     6
==============
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
     7
3749
e43a82ddde12 mod_log_json/README: Add a sentence about the first example
Kim Alvefur <zash@zash.se>
parents: 3740
diff changeset
     8
Here we log to `/var/log/prosody/prosody.json`:
e43a82ddde12 mod_log_json/README: Add a sentence about the first example
Kim Alvefur <zash@zash.se>
parents: 3740
diff changeset
     9
3739
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    10
``` {.lua}
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    11
log = {
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    12
  -- your other log sinks
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    13
  info = "/var/log/prosody/prosody.log"
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    14
  -- add this:
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    15
  { to = "json", filename = "/var/log/prosody/prosody.json" };
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    16
}
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    17
```
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    18
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    19
Format
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    20
======
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    21
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    22
JSON log files consist of a series of `\n`-separated JSON objects,
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    23
suitable for mangling with tools like
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    24
[`jq`](https://stedolan.github.io/jq/).
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    25
3740
3784bbcbb8ff mod_log_json: Prettify JSON for readability
Kim Alvefur <zash@zash.se>
parents: 3739
diff changeset
    26
Example (with whitespace and indentation for readability):
3784bbcbb8ff mod_log_json: Prettify JSON for readability
Kim Alvefur <zash@zash.se>
parents: 3739
diff changeset
    27
3739
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    28
``` {.json}
3740
3784bbcbb8ff mod_log_json: Prettify JSON for readability
Kim Alvefur <zash@zash.se>
parents: 3739
diff changeset
    29
{
3784bbcbb8ff mod_log_json: Prettify JSON for readability
Kim Alvefur <zash@zash.se>
parents: 3739
diff changeset
    30
   "args" : [],
3784bbcbb8ff mod_log_json: Prettify JSON for readability
Kim Alvefur <zash@zash.se>
parents: 3739
diff changeset
    31
   "datetime" : "2019-11-03T13:38:28Z",
3784bbcbb8ff mod_log_json: Prettify JSON for readability
Kim Alvefur <zash@zash.se>
parents: 3739
diff changeset
    32
   "level" : "info",
3784bbcbb8ff mod_log_json: Prettify JSON for readability
Kim Alvefur <zash@zash.se>
parents: 3739
diff changeset
    33
   "message" : "Client connected",
3784bbcbb8ff mod_log_json: Prettify JSON for readability
Kim Alvefur <zash@zash.se>
parents: 3739
diff changeset
    34
   "source" : "c2s55f267f5b9d0"
3784bbcbb8ff mod_log_json: Prettify JSON for readability
Kim Alvefur <zash@zash.se>
parents: 3739
diff changeset
    35
}
3784bbcbb8ff mod_log_json: Prettify JSON for readability
Kim Alvefur <zash@zash.se>
parents: 3739
diff changeset
    36
{
3784bbcbb8ff mod_log_json: Prettify JSON for readability
Kim Alvefur <zash@zash.se>
parents: 3739
diff changeset
    37
   "args" : [
3784bbcbb8ff mod_log_json: Prettify JSON for readability
Kim Alvefur <zash@zash.se>
parents: 3739
diff changeset
    38
      "user@example.net"
3784bbcbb8ff mod_log_json: Prettify JSON for readability
Kim Alvefur <zash@zash.se>
parents: 3739
diff changeset
    39
   ],
3784bbcbb8ff mod_log_json: Prettify JSON for readability
Kim Alvefur <zash@zash.se>
parents: 3739
diff changeset
    40
   "datetime" : "2019-11-03T13:38:28Z",
3784bbcbb8ff mod_log_json: Prettify JSON for readability
Kim Alvefur <zash@zash.se>
parents: 3739
diff changeset
    41
   "level" : "debug",
3784bbcbb8ff mod_log_json: Prettify JSON for readability
Kim Alvefur <zash@zash.se>
parents: 3739
diff changeset
    42
   "message" : "load_roster: asked for: %s",
3784bbcbb8ff mod_log_json: Prettify JSON for readability
Kim Alvefur <zash@zash.se>
parents: 3739
diff changeset
    43
   "source" : "rostermanager"
3784bbcbb8ff mod_log_json: Prettify JSON for readability
Kim Alvefur <zash@zash.se>
parents: 3739
diff changeset
    44
}
3739
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    45
```
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    46
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    47
`datetime`
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    48
:   [XEP-0082]-formatted timestamp.
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    49
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    50
`source`
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    51
:   Log source, usually a module or a connected session.
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    52
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    53
`level`
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    54
:   `debug`, `info`, `warn` or `error`
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    55
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    56
`message`
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    57
:   The log message in `printf` format. Combine with `args` to get the
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    58
    final message.
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    59
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    60
`args`
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    61
:   Array of extra arguments, corresponding to `printf`-style `%s`
06b640473cda mod_log_json: Add a README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
    62
    formatting in the `message`.