anchor.diff:  people learned Go by contributing to Packetbeat & libbeat, including the
   original Packetbeat authors.
   
  -To exemplify this guide with a working example, we will follow
  +To exemplify this guide with a working example, we will follow the
   https://github.com/elastic/topbeat[Topbeat] source code. Topbeat is similar to
   the `top` command line tool but instead of printing the statistics to the screen
  -it ships them to Elasticsearch for storage.
  +it periodically ships them to Elasticsearch for storage.
   
   After having https://golang.org/doc/install[installed Go] and having setup the
   https://golang.org/doc/code.html#GOPATH[GOPATH] environment variable to point to
   your preferred workspace location, a simple way of getting the source code for
  -topbeat and libeat and compiling them at the same time is to do:
  +Topbeat and libeat and compiling them at the same time is to do:
   
   [source,shell]
   ----------------------------------------------------------------------
  
positive.code: captures the required data and sends it to the publisher via the `events`
  channel.
  
  The actual sending is done inside the `exportSystemStats()` function, here is an
  example code snippet:
  
  [source,go]
  ----------------------------------------------------------------------
    event := common.MapStr{
        "timestamp": common.Time(time.Now()), <1>
        "type":      "system",
        "load":      load_stat,
        "cpu":       cpu_stat,
        "mem":       mem_stat,
        "swap":      swap_stat,
    }
  
    t.events <- event
  ----------------------------------------------------------------------
  
  <1> The `timestamp` fields needs to be of time `common.Time`.
  
  === Cleanup
  
  
negative.code:   procs: [".*"]
  ----------------------------------------------------------------------
  
  And here are the corresponding Go structures, found in `config.go`:
  
  [source,go]
  ----------------------------------------------------------------------
  