Class: LogAnalyticsClient

Inherits:
Object
  • Object
show all
Defined in:
lib/logstash/logAnalyticsClient/logAnalyticsClient.rb

Constant Summary collapse

API_VERSION =
'2016-04-01'.freeze

Instance Method Summary collapse

Constructor Details

#initialize(logstashLoganalyticsConfiguration) ⇒ LogAnalyticsClient

Returns a new instance of LogAnalyticsClient.



12
13
14
15
16
# File 'lib/logstash/logAnalyticsClient/logAnalyticsClient.rb', line 12

def initialize (logstashLoganalyticsConfiguration)
  @logstashLoganalyticsConfiguration = logstashLoganalyticsConfiguration
  set_proxy(@logstashLoganalyticsConfiguration.proxy)
  @uri = sprintf("https://%s.%s/api/logs?api-version=%s", @logstashLoganalyticsConfiguration.workspace_id, @logstashLoganalyticsConfiguration.endpoint, API_VERSION)
end

Instance Method Details

#post_data(body) ⇒ Object

Post the given json to Azure Loganalytics

Raises:

  • (ConfigError)


20
21
22
23
24
25
26
27
28
# File 'lib/logstash/logAnalyticsClient/logAnalyticsClient.rb', line 20

def post_data(body)
  raise ConfigError, 'no json_records' if body.empty?
  # Create REST request header

  header = get_header(body.bytesize)
  # Post REST request 

  response = RestClient.post(@uri, body, header)

  return response
end