Skip to content

Instantly share code, notes, and snippets.

View dsouzajude's full-sized avatar

Jude DSouza dsouzajude

View GitHub Profile
@dsouzajude
dsouzajude / adapter.go
Created July 14, 2019 13:08
Registering Fluentd Adapter to Logspout
package fluentd
import "github.com/gliderlabs/logspout/router"
// NewAdapter creates a Logspout fluentd adapter instance.
func NewAdapter(route *router.Route) (router.LogAdapter, error) {
// Add code here to construct NewAdapter object
}
@dsouzajude
dsouzajude / adapter.go
Created July 14, 2019 13:13
Fluentd Adapter Constructor Function
package fluentd
import (
"log"
"net"
"os"
"strconv"
"time"
"github.com/fluent/fluent-logger-golang/fluent"
@dsouzajude
dsouzajude / adapter.go
Created July 14, 2019 13:16
Streaming logs from Logspout into Fluentd
// Stream handles a stream of messages from Logspout and forwards it to Fluentd
func (ad *Adapter) Stream(logstream chan *router.Message) {
for message := range logstream {
// Skip if message is empty
messageIsEmpty, err := regexp.MatchString("^[[:space:]]*$", message.Data)
if messageIsEmpty {
log.Println("Skipping empty message!")
continue
}
@dsouzajude
dsouzajude / modules.go
Created July 14, 2019 13:19
modules.go that imports fluentd adapter module
package main
import (
_ "github.com/dsouzajude/logspout-fluentd/fluentd"
_ "github.com/gliderlabs/logspout/httpstream"
_ "github.com/gliderlabs/logspout/transports/tcp"
_ "github.com/gliderlabs/logspout/transports/udp"
)
@dsouzajude
dsouzajude / build.sh
Created July 14, 2019 13:21
build.sh file that downloads logspout to be custom built
#!/bin/sh
set -e
mkdir -p /go/src/github.com/gliderlabs
cp -r /src /go/src/github.com/gliderlabs/logspout
# backwards compatibility
ln -fs /tmp/docker.sock /var/run/docker.sock
@dsouzajude
dsouzajude / Dockerfile
Created July 14, 2019 13:22
Multistage build for Logspout with Fluentd custom module
# ## Multi-stage build
#
# Init stage, includes logspout source code
# and triggers the build.sh script
#
FROM gliderlabs/logspout:master as master
#
# Build stage, build logspout with fluentd adapter
@dsouzajude
dsouzajude / .zshrc
Last active April 11, 2022 03:20
My .zshrc configuration with Zplugin manager
#
# Prerequisite installations for using this zsh configuration
#
# Following utilities must be installed on the system for this configuration to work
#
# fd https://github.com/sharkdp/fd
# fasd https://github.com/clvv/fasd/wiki/Installing-via-Package-Managers#mac-os-x
# fzf https://github.com/junegunn/fzf
# ripgrep https://github.com/BurntSushi/ripgrep
@dsouzajude
dsouzajude / cloudSettings
Last active March 15, 2020 15:43
Sync settings from vscode
{"lastUpload":"2020-03-15T15:43:53.624Z","extensionVersion":"v3.4.3"}
FROM jenkins/jenkins:2.220
LABEL maintainer="[email protected]"
USER root
# Create Jenkins Log Folder
RUN mkdir /var/log/jenkins
RUN mkdir /var/cache/jenkins
RUN chown -R jenkins:jenkins /var/log/jenkins
RUN chown -R jenkins:jenkins /var/cache/jenkins
@dsouzajude
dsouzajude / prometheus-consul-envoy.yml
Created September 3, 2020 11:12
Prometheus Config with Consul SD
global:
scrape_interval: 10s
external_labels:
Environment: sandbox
Region: eu-west-1
Source: prometheus
scrape_configs:
- job_name: consul-services
metrics_path: "/metrics"