microsoft-logstash-output-azure-loganalytics 0.1.0 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ce0904868fbfab9bfbc3386a101957a436f9d8c1fde87450ffd2a3a0d9c78574
4
- data.tar.gz: 1a69ab08f7bd6a3ea6ee639dfddd5c69333ef53a4dcfd6a08fccd65eb4bd26e5
3
+ metadata.gz: 178a030469859740207ce35bf63639665662d42302c5a10b3e3c9646a97f33ad
4
+ data.tar.gz: e90ee6beecc15fe88ff0f5da812bbd213c136b9b84a569ee704a397b4dbc150b
5
5
  SHA512:
6
- metadata.gz: 262dd9c81132c1ad32bd5ccab843722ee42cc3d8ebc5cf417d99540c13c49f42f5eee2f987d29e31d03a471feda3a5dee4318f302ebace577333144f1744dd6b
7
- data.tar.gz: 20306ed12e1dfde8f1a63caeca7c7b585ed2b50ab8de437fb7d1c37c66fedb2fce6c8d3080e73f2e3c49b276f27f23d3df17c68dffd0a82ebfe4473ad2ea56be
6
+ metadata.gz: 10aca1c15e681831bd84f605daa869c581c500a7f32bce99f16bea23f006e0ebf0029725c6f99416a340e417cc62ed17a97aecdceae0e6c719d7febf1cf6fc2b
7
+ data.tar.gz: e60c8c43520ae0c49387ae21cb0ea7d5fea45dab2633f1e41bb7e0fcf5e9166ec766b92c344fd34e82029c03f28088fb6c9dbfd344e3db8ebb4a8ae8e5fafd41
data/README.md CHANGED
@@ -2,9 +2,9 @@
2
2
 
3
3
  Azure Sentinel provides a new output plugin for Logstash. Using this output plugin, you will be able to send any log you want using Logstash to the Azure Sentinel/Log Analytics workspace
4
4
  Today you will be able to send messages to custom logs table that you will define in the output plugin.
5
- Getting started with Logstash
5
+ [Getting started with Logstash](<https://www.elastic.co/guide/en/logstash/current/getting-started-with-logstash.html>)
6
6
 
7
- Azure Sentinel output plugin uses the rest API integration to Log Analytics, in order to ingest the logs into custom logs tables [What are custom logs tables]
7
+ Azure Sentinel output plugin uses the rest API integration to Log Analytics, in order to ingest the logs into custom logs tables [What are custom logs tables](<https://docs.microsoft.com/en-us/azure/azure-monitor/platform/data-sources-custom-logs>)
8
8
 
9
9
  Plugin version: v1.0.0
10
10
  Released on: 2020-04-30
@@ -12,15 +12,15 @@ Released on: 2020-04-30
12
12
  ## Installation
13
13
 
14
14
  Azure Sentinel provides Logstash output plugin to Log analytics workspace.
15
- Install the microsoft-logstash-output-azure-loganalytics, use Logstash Working with plugins document.
16
- For offline setup follow Logstash Offline Plugin Management instruction.
15
+ Install the microsoft-logstash-output-azure-loganalytics, use [Logstash Working with plugins](<https://www.elastic.co/guide/en/logstash/current/working-with-plugins.html>) document.
16
+ For offline setup follow [Logstash Offline Plugin Management instruction](<https://www.elastic.co/guide/en/logstash/current/offline-plugins.html>).
17
17
 
18
18
  ## Configuration
19
19
 
20
20
  in your Logstash configuration file, add the Azure Sentinel output plugin to the configuration with following values:
21
21
  - workspace_id – your workspace ID guid
22
- - workspace_key – your workspace primary key guid
23
- - custom_log_table_name – table name, in which the logs will be ingested, limited to one table, the log table will be presented in the logs blade under the custom logs label, with a _CL suffix.
22
+ - workspace_key (primary key) – your workspace primary key guid. You can find your workspace key and id the following path: Home > Log Analytics workspace > Advanced settings
23
+ - custom_log_table_name – table name, in which the logs will be ingested, limited to one table, the log table will be presented in the logs blade under the custom logs label, with a _CL suffix. Table name must be only alpha characters.
24
24
  - endpoint – Optional field by default set as log analytics endpoint.
25
25
  - time_generated_field – Optional field, this property is used to override the default TimeGenerated field in Log Analytics. Populate this property with the name of the sent data time field.
26
26
  - key_names – list of Log analytics output schema fields.
@@ -34,7 +34,48 @@ Note: View the GitHub to learn more about the sent message’s configuration, pe
34
34
  Here is an example configuration who parse Syslog incoming data into a custom table named "logstashCustomTableName".
35
35
 
36
36
  ### Example Configuration
37
- <u>Configuration</u>
37
+
38
+ <u>Basic configuration</u>
39
+
40
+ - Using filebeat input pipe
41
+
42
+ ```
43
+ input {
44
+ beats {
45
+ port => "5044"
46
+ }
47
+ }
48
+ filter {
49
+ }
50
+ output {
51
+ logstash-output-azure {
52
+ workspace_id => "4g5tad2b-a4u4-147v-a4r7-23148a5f2c21" # <your workspace id>
53
+ workspace_key => "u/saRtY0JGHJ4Ce93g5WQ3Lk50ZnZ8ugfd74nk78RPLPP/KgfnjU5478Ndh64sNfdrsMni975HJP6lp==" # <your workspace key>
54
+ custom_log_table_name => "tableName"
55
+ }
56
+ }
57
+ ```
58
+ - Or using the tcp imput pipe
59
+
60
+ ```
61
+ input {
62
+ tcp {
63
+ port => "514"
64
+ type => syslog #optional, will effect log type in table
65
+ }
66
+ }
67
+ filter {
68
+ }
69
+ output {
70
+ logstash-output-azure {
71
+ workspace_id => "4g5tad2b-a4u4-147v-a4r7-23148a5f2c21" # <your workspace id>
72
+ workspace_key => "u/saRtY0JGHJ4Ce93g5WQ3Lk50ZnZ8ugfd74nk78RPLPP/KgfnjU5478Ndh64sNfdrsMni975HJP6lp==" # <your workspace key>
73
+ custom_log_table_name => "tableName"
74
+ }
75
+ }
76
+ ```
77
+
78
+ <u>Advencaed Configuration</u>
38
79
  ```
39
80
  input {
40
81
  tcp {
@@ -66,4 +107,10 @@ For example:
66
107
  ```
67
108
  logger -p local4.warn -t CEF: "0|Microsoft|Device|cef-test|example|data|1|here is some more data for the example" -P 514 -d -n 127.0.0.1
68
109
 
69
- ```
110
+ ```
111
+
112
+ Alternativly you can use netcat to test your configuration:
113
+
114
+ ```
115
+ echo "test string" | netcat localhost 514
116
+ ```
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.1.0
1
+ 0.2.0
@@ -102,6 +102,9 @@ class LogStash::Outputs::AzureLogAnalytics < LogStash::Outputs::Base
102
102
  keys_intersection.each do |key|
103
103
  document[key] = event_hash[key]
104
104
  end
105
+ if document.keys.length < 1
106
+ @logger.warn("No keys found, message is dropped. Plugin keys: #{@key_names}, Event keys: #{event_hash}. The event message do not match event expected structre. Please edit key_names section in output plugin and try again.")
107
+ end
105
108
  else
106
109
  document = event_hash
107
110
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: microsoft-logstash-output-azure-loganalytics
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ron Marsiano
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-05-25 00:00:00.000000000 Z
11
+ date: 2020-06-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  requirement: !ruby/object:Gem::Requirement