logstash-filter-stag 0.0.2 → 0.0.3

Sign up to get free protection for your applications and to get access to all the features.
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