summaryrefslogtreecommitdiffstats
path: root/fluent-bit/examples/windows
diff options
context:
space:
mode:
Diffstat (limited to 'fluent-bit/examples/windows')
-rw-r--r--fluent-bit/examples/windows/docker/README.md28
-rw-r--r--fluent-bit/examples/windows/docker/conf/fluent-bit.conf18
-rw-r--r--fluent-bit/examples/windows/docker/logs/application.log7
-rw-r--r--fluent-bit/examples/windows/kubernetes/README.md27
-rw-r--r--fluent-bit/examples/windows/kubernetes/configmap.yaml24
-rw-r--r--fluent-bit/examples/windows/kubernetes/deployment.yaml55
6 files changed, 159 insertions, 0 deletions
diff --git a/fluent-bit/examples/windows/docker/README.md b/fluent-bit/examples/windows/docker/README.md
new file mode 100644
index 00000000..7efbb196
--- /dev/null
+++ b/fluent-bit/examples/windows/docker/README.md
@@ -0,0 +1,28 @@
+# Fluent Bit running in Windows Container
+
+You can test the Fluent Bit image on a Windows Container host as follows:
+
+```
+PS> $SAMPLE_DIR="<REPO_CHECKOUT_FOLDER>\examples\windows"
+PS> docker run -v $SAMPLE_DIR\docker\conf:c:\config -v $SAMPLE_DIR\docker\logs:c:\logs -v $SAMPLE_DIR\docker\state:c:\state fluent/fluent-bit:1.3.7-nanoserver
+```
+
+You should see something like the following output:
+
+```
+Fluent Bit v1.3.7
+Copyright (C) Treasure Data
+
+[2020/02/16 16:02:02] [ info] [storage] initializing...
+[2020/02/16 16:02:02] [ info] [storage] in-memory
+[2020/02/16 16:02:02] [ info] [storage] normal synchronization mode, checksum disabled, max_chunks_up=128
+[2020/02/16 16:02:02] [ info] [engine] started (pid=1256)
+[2020/02/16 16:02:02] [ info] [sp] stream processor started
+{"date":"2020-02-16T06:02:02.951104Z","log":"{\"date\":\"2019-08-12T05:28:39.075296Z\",\"log\":\"2019-08-12 05:28:29 10.240.0.77 GET /bundles/MsAjaxJs v=c42ygB2U07n37m_Sfa8ZbLGVu4Rr2gsBo7MvUEnJeZ81 80 - 10.240.0.35 Mozilla/5.0+(Windows+NT+10.0;+Win64;+x64)+AppleWebKit/537.36+(KHTML,+like+Gecko)+Chrome/76.0.3809.100+Safari/537.36 http://52.237.212.148/Contact 200 0 0 65\"}"}
+{"date":"2020-02-16T06:02:02.951136Z","log":"{\"date\":\"2019-08-12T05:28:39.075296Z\",\"log\":\"2019-08-12 05:28:29 10.240.0.77 GET /Scripts/respond.js - 80 - 10.240.0.4 Mozilla/5.0+(Windows+NT+10.0;+Win64;+x64)+AppleWebKit/537.36+(KHTML,+like+Gecko)+Chrome/76.0.3809.100+Safari/537.36 http://52.237.212.148/Contact 200 0 0 40\"}"}
+{"date":"2020-02-16T06:02:02.951137Z","log":"{\"date\":\"2019-08-12T05:28:39.075296Z\",\"log\":\"2019-08-12 05:28:29 10.240.0.77 GET /Content/Site.css - 80 - 10.240.0.35 Mozilla/5.0+(Windows+NT+10.0;+Win64;+x64)+AppleWebKit/537.36+(KHTML,+like+Gecko)+Chrome/76.0.3809.100+Safari/537.36 http://52.237.212.148/Contact 200 0 0 70\"}"}
+{"date":"2020-02-16T06:02:02.951137Z","log":"{\"date\":\"2019-08-12T05:28:39.075297Z\",\"log\":\"2019-08-12 05:28:29 10.240.0.77 GET /bundles/WebFormsJs v=AAyiAYwMfvmwjNSBfIMrBAqfU5exDukMVhrRuZ-PDU01 80 - 10.240.0.4 Mozilla/5.0+(Windows+NT+10.0;+Win64;+x64)+AppleWebKit/537.36+(KHTML,+like+Gecko)+Chrome/76.0.3809.100+Safari/537.36 http://52.237.212.148/Contact 200 0 "}
+{"date":"2020-02-16T06:02:02.951138Z","log":"0 47\"}"}
+{"date":"2020-02-16T06:02:02.951138Z","log":"{\"date\":\"2019-08-12T05:28:39.075297Z\",\"log\":\"2019-08-12 05:28:29 10.240.0.77 GET /favicon.ico - 80 - 10.240.0.4 Mozilla/5.0+(Windows+NT+10.0;+Win64;+x64)+AppleWebKit/537.36+(KHTML,+like+Gecko)+Chrome/76.0.3809.100+Safari/537.36 http://52.237.212.148/Contact 200 0 0 28\"}"}
+{"date":"2020-02-16T06:02:02.951138Z","log":"{\"date\":\"2019-08-12T05:31:37.941523Z\",\"log\":\"2019-08-12 05:30:57 10.240.0.77 GET / - 80 - 10.240.0.4 - - 200 0 64 769\"}"}
+``` \ No newline at end of file
diff --git a/fluent-bit/examples/windows/docker/conf/fluent-bit.conf b/fluent-bit/examples/windows/docker/conf/fluent-bit.conf
new file mode 100644
index 00000000..1fca9d29
--- /dev/null
+++ b/fluent-bit/examples/windows/docker/conf/fluent-bit.conf
@@ -0,0 +1,18 @@
+[SERVICE]
+ Flush 5
+ Daemon off
+ Log_Level info
+
+[INPUT]
+ Name tail
+ Path c:\\logs\\*.log
+ Refresh_Interval 60
+ Ignore_Older 10s
+ Rotate_Wait 5
+ DB c:\\state\\logs.db
+
+[OUTPUT]
+ Name stdout
+ Match *
+ Format json_lines
+ json_date_format iso8601 \ No newline at end of file
diff --git a/fluent-bit/examples/windows/docker/logs/application.log b/fluent-bit/examples/windows/docker/logs/application.log
new file mode 100644
index 00000000..9ad9ee96
--- /dev/null
+++ b/fluent-bit/examples/windows/docker/logs/application.log
@@ -0,0 +1,7 @@
+{"date":"2019-08-12T05:28:39.075296Z","log":"2019-08-12 05:28:29 10.240.0.77 GET /bundles/MsAjaxJs v=c42ygB2U07n37m_Sfa8ZbLGVu4Rr2gsBo7MvUEnJeZ81 80 - 10.240.0.35 Mozilla/5.0+(Windows+NT+10.0;+Win64;+x64)+AppleWebKit/537.36+(KHTML,+like+Gecko)+Chrome/76.0.3809.100+Safari/537.36 http://52.237.212.148/Contact 200 0 0 65"}
+{"date":"2019-08-12T05:28:39.075296Z","log":"2019-08-12 05:28:29 10.240.0.77 GET /Scripts/respond.js - 80 - 10.240.0.4 Mozilla/5.0+(Windows+NT+10.0;+Win64;+x64)+AppleWebKit/537.36+(KHTML,+like+Gecko)+Chrome/76.0.3809.100+Safari/537.36 http://52.237.212.148/Contact 200 0 0 40"}
+{"date":"2019-08-12T05:28:39.075296Z","log":"2019-08-12 05:28:29 10.240.0.77 GET /Content/Site.css - 80 - 10.240.0.35 Mozilla/5.0+(Windows+NT+10.0;+Win64;+x64)+AppleWebKit/537.36+(KHTML,+like+Gecko)+Chrome/76.0.3809.100+Safari/537.36 http://52.237.212.148/Contact 200 0 0 70"}
+{"date":"2019-08-12T05:28:39.075297Z","log":"2019-08-12 05:28:29 10.240.0.77 GET /bundles/WebFormsJs v=AAyiAYwMfvmwjNSBfIMrBAqfU5exDukMVhrRuZ-PDU01 80 - 10.240.0.4 Mozilla/5.0+(Windows+NT+10.0;+Win64;+x64)+AppleWebKit/537.36+(KHTML,+like+Gecko)+Chrome/76.0.3809.100+Safari/537.36 http://52.237.212.148/Contact 200 0
+0 47"}
+{"date":"2019-08-12T05:28:39.075297Z","log":"2019-08-12 05:28:29 10.240.0.77 GET /favicon.ico - 80 - 10.240.0.4 Mozilla/5.0+(Windows+NT+10.0;+Win64;+x64)+AppleWebKit/537.36+(KHTML,+like+Gecko)+Chrome/76.0.3809.100+Safari/537.36 http://52.237.212.148/Contact 200 0 0 28"}
+{"date":"2019-08-12T05:31:37.941523Z","log":"2019-08-12 05:30:57 10.240.0.77 GET / - 80 - 10.240.0.4 - - 200 0 64 769"} \ No newline at end of file
diff --git a/fluent-bit/examples/windows/kubernetes/README.md b/fluent-bit/examples/windows/kubernetes/README.md
new file mode 100644
index 00000000..f750a5d1
--- /dev/null
+++ b/fluent-bit/examples/windows/kubernetes/README.md
@@ -0,0 +1,27 @@
+# Fluent Bit running as a sidecar on Kubernetes Windows node
+
+You can test the Fluent Bit image as a sidecar on a Kubernetes Windows node as follows:
+
+```
+kubectl create namespace fluentbit
+kubectl apply -n fluentbit -f $SAMPLE_DIR\kubernetes\configmap.yaml
+kubectl apply -n fluentbit -f $SAMPLE_DIR\kubernetes\deployment.yaml
+```
+
+Ensure that the resources have been correctly deployed.
+
+```
+kubectl get pod -n fluentbit
+NAME READY STATUS RESTARTS AGE
+logging-fluentbit-sidecar-6ff8c84494-zt4ft 2/2 Running 0 31m
+
+kubectl get svc -n fluentbit
+NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
+logging-fluentbit-sidecar LoadBalancer 10.0.27.172 52.237.212.148 80:30172/TCP 126m
+```
+
+If you tail the logs on the Fluent Bit sidecar, and then explore the website running in the external ip and port 80, you should see generated logs ...
+
+```
+kubectl logs logging-fluentbit-sidecar-6ff8c84494-zt4ft -n fluentbit -c fluentbit-logger -f
+``` \ No newline at end of file
diff --git a/fluent-bit/examples/windows/kubernetes/configmap.yaml b/fluent-bit/examples/windows/kubernetes/configmap.yaml
new file mode 100644
index 00000000..18ee0b99
--- /dev/null
+++ b/fluent-bit/examples/windows/kubernetes/configmap.yaml
@@ -0,0 +1,24 @@
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: fluentbit-config
+data:
+ fluent-bit.conf: |-
+ [SERVICE]
+ Flush 5
+ Daemon off
+ Log_Level info
+
+ [INPUT]
+ Name tail
+ Path c:\\logs\\*.log
+ Refresh_Interval 60
+ Ignore_Older 10s
+ Rotate_Wait 5
+ DB c:\\state\\logs.db
+
+ [OUTPUT]
+ Name stdout
+ Match *
+ Format json_lines
+ json_date_format iso8601
diff --git a/fluent-bit/examples/windows/kubernetes/deployment.yaml b/fluent-bit/examples/windows/kubernetes/deployment.yaml
new file mode 100644
index 00000000..7bbf2996
--- /dev/null
+++ b/fluent-bit/examples/windows/kubernetes/deployment.yaml
@@ -0,0 +1,55 @@
+apiVersion: v1
+kind: Service
+metadata:
+ name: logging-fluentbit-sidecar
+ labels:
+ app: logging-fluentbit-sidecar
+spec:
+ ports:
+ - name: http
+ port: 80
+ targetPort: 80
+ selector:
+ app: website
+ type: LoadBalancer
+---
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+ name: logging-fluentbit-sidecar
+spec:
+ replicas: 1
+ selector:
+ matchLabels:
+ app: website
+ template:
+ metadata:
+ labels:
+ app: website
+ spec:
+ containers:
+ - name: aspnet-web
+ image: mcr.microsoft.com/dotnet/framework/samples:aspnetapp
+ volumeMounts:
+ - mountPath: c:\inetpub\logs\LogFiles\W3SVC1\
+ name: log-volume
+ - name: fluentbit-logger
+ image: fluent/fluent-bit:1.3.7-nanoserver
+ imagePullPolicy: Always
+ volumeMounts:
+ - mountPath: c:\config
+ name: config
+ - mountPath: c:\logs
+ name: log-volume
+ - mountPath: c:\state
+ name: log-state
+ volumes:
+ - name: config
+ configMap:
+ name: fluentbit-config
+ - name: log-volume
+ emptyDir: {}
+ - name: log-state
+ emptyDir: {}
+ nodeSelector:
+ beta.kubernetes.io/os: windows \ No newline at end of file