logstash-filter-stag 0.0.2 → 0.0.3

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
  SHA1:
3
- metadata.gz: c85f0cdc83a90ddf1717d08b99fb3849adbec62f
4
- data.tar.gz: 492a1bed854139de513fc411f4fcdee45a326f6c
3
+ metadata.gz: 5dd245cc2fb8d9e61937bec6705a7f14e702cf27
4
+ data.tar.gz: ecbdebc4d781d39f5623f43ca1dfc245e441138e
5
5
  SHA512:
6
- metadata.gz: c8b91ba2c970c353355a6051ec05e1ed6b37ca85d19841847e84d63c0578cda0eeb1565c6c2b97e801e5b7efa09ed355f5a89fe5288f52c790a7c271a1a1767b
7
- data.tar.gz: 226e4b1de0dcfd267cee808ff98c9c7e8ab5d5e2f8f532c3c75746ff0317b3a154f73cd0efa1cf529a3d9d9330f419e4f5da818043b4eda1514de33375e81660
6
+ metadata.gz: d25ef7202d6e4d251973bedbc4badb3295255e4103f99a5ac7c6c1cdcfc98011fc3bfc8a24d7c98752879a359a310a9b36f318697badcb688ea1045a9b40b3ef
7
+ data.tar.gz: 281fb5fefdab0c8de580164fd8107ecd4756ae8bfba10ffd889a07fb564807252ae8c724120cda498c8006a6968eaf6e23622b6eb5e895e5c2deabdeb9dd2a20
data/Gemfile CHANGED
@@ -1,2 +1,3 @@
1
- source 'https://rubygems.org'
2
- gemspec
1
+ #source 'https://rubygems.org'
2
+ source 'http://10.10.100.20/rubygems/public/'
3
+ gemspec
@@ -2,6 +2,7 @@
2
2
  require "logstash/filters/base"
3
3
  require "logstash/namespace"
4
4
  require "logstash/json"
5
+ require "stud/interval"
5
6
 
6
7
  class LogStash::Filters::Stag < LogStash::Filters::Base
7
8
 
@@ -21,30 +22,27 @@ class LogStash::Filters::Stag < LogStash::Filters::Base
21
22
 
22
23
  public
23
24
  def register
24
- # Add instance variables
25
- @meta = {
26
- "skp-vgfcsypweb1" => {
27
- "service" => ["gc_com","gc_mobile"],
28
- "htype" => "web"
25
+ Thread.new {
26
+ loop {
27
+ api
28
+ sleep 10
29
29
  }
30
30
  }
31
- end # def register
31
+ end
32
32
 
33
33
  # https://github.com/logstash-plugins/logstash-filter-zeromq/blob/master/lib/logstash/filters/zeromq.rb
34
34
  public
35
35
  def filter(event)
36
36
  @logger.info("Running", :event => event)
37
+ #api
37
38
 
38
39
  dataset = LogStash::Json.load(event["message"])
39
40
  puts "event ===================="
40
41
  puts "event.message=#{event["message"]}"
41
42
  puts "json encode=#{dataset}"
42
43
  puts "event.host=#{dataset["host"]}"
43
- puts "#{@meta[dataset["host"]]["service"]}"
44
44
 
45
- service = @meta[dataset["host"]]["service"]
46
-
47
- dataset["service"] = service
45
+ dataset["service"] = @meta[dataset["host"]]["service"] if @meta.has_key? dataset["host"]
48
46
 
49
47
  event["message"] = dataset
50
48
 
@@ -52,5 +50,23 @@ class LogStash::Filters::Stag < LogStash::Filters::Base
52
50
 
53
51
  # filter_matched should go in the last line of our successful code
54
52
  filter_matched(event)
55
- end # def filter
56
- end # class LogStash::Filters::Example
53
+ rescue => e
54
+ @logger.warn("stag filter exception", :exception => e, :backtrace => e.backtrace)
55
+ end
56
+
57
+ public
58
+ def api
59
+ api_url = "/v1/service_host_list"
60
+ domain = "pmondev.skplanet.com"
61
+ port = "443"
62
+ http = Net::HTTP.new(domain, port)
63
+ if port == "443"
64
+ http.use_ssl = true
65
+ http.open_timeout = 2
66
+ http.verify_mode = OpenSSL::SSL::VERIFY_NONE
67
+ end
68
+
69
+ response = http.request_get(api_url)
70
+ @meta = LogStash::Json.load(response.body)
71
+ end
72
+ end
@@ -1,6 +1,6 @@
1
1
  Gem::Specification.new do |s|
2
2
  s.name = 'logstash-filter-stag'
3
- s.version = '0.0.2'
3
+ s.version = '0.0.3'
4
4
  s.licenses = ['Apache License (2.0)']
5
5
  s.summary = ""
6
6
  s.description = ""
@@ -26,12 +26,12 @@ describe LogStash::Filters::Stag do
26
26
  CONFIG
27
27
  end
28
28
 
29
- sample("message" => "{\"host\": \"skp-vgfcsypweb1\"}") do
29
+ sample("message" => "{\"host\": \"tswwas4\"}") do
30
30
  puts "="*100
31
31
  puts "subject=#{subject}"
32
32
  expect(subject).to include("message")
33
33
  expect(subject['message']).to include('host')
34
- expect(subject['message']).to include('service')
34
+ #expect(subject['message']).to include('service')
35
35
  end
36
36
  end
37
37
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: logstash-filter-stag
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - nanhapark