Class: DatadogAPIClient::V2::CIVisibilityLogsAPI
- Inherits:
-
Object
- Object
- DatadogAPIClient::V2::CIVisibilityLogsAPI
- Defined in:
- lib/datadog_api_client/v2/api/ci_visibility_logs_api.rb
Instance Attribute Summary collapse
-
#api_client ⇒ Object
Returns the value of attribute api_client.
Instance Method Summary collapse
-
#initialize(api_client = DatadogAPIClient::APIClient.default) ⇒ CIVisibilityLogsAPI
constructor
A new instance of CIVisibilityLogsAPI.
-
#submit_ci_log(body, opts = {}) ⇒ Object
Send CI job logs.
-
#submit_ci_log_with_http_info(body, opts = {}) ⇒ Array<(Object, Integer, Hash)>
Send CI job logs.
Constructor Details
#initialize(api_client = DatadogAPIClient::APIClient.default) ⇒ CIVisibilityLogsAPI
Returns a new instance of CIVisibilityLogsAPI.
22 23 24 |
# File 'lib/datadog_api_client/v2/api/ci_visibility_logs_api.rb', line 22 def initialize(api_client = DatadogAPIClient::APIClient.default) @api_client = api_client end |
Instance Attribute Details
#api_client ⇒ Object
Returns the value of attribute api_client.
20 21 22 |
# File 'lib/datadog_api_client/v2/api/ci_visibility_logs_api.rb', line 20 def api_client @api_client end |
Instance Method Details
#submit_ci_log(body, opts = {}) ⇒ Object
Send CI job logs.
29 30 31 32 |
# File 'lib/datadog_api_client/v2/api/ci_visibility_logs_api.rb', line 29 def submit_ci_log(body, opts = {}) data, _status_code, _headers = submit_ci_log_with_http_info(body, opts) data end |
#submit_ci_log_with_http_info(body, opts = {}) ⇒ Array<(Object, Integer, Hash)>
Send CI job logs.
Send log lines for a CI job over HTTP. See the CI Visibility Pipelines API for submitting the associated pipeline and job events.
A request can contain one log object or an array of up to 1,000 log objects. The maximum uncompressed request body size is 5.1 MiB.
You can stream log lines while a CI job runs or send them after it finishes. After you submit the completed job event, 20 seconds without a new log line marks the job's logs as complete. Lines sent after that may not appear.
A job can have up to 128 additional attributes and 256 tags. Additional attributes are top-level fields with
string, number, Boolean, or null values. Nested objects and arrays are rejected. Additional attributes and
ddtags apply to all log lines in the job. If an additional attribute has different values on different lines,
the first value received is used. Tags supplied on different lines are combined. A job can contain up to
2,000,000 log records or 1 GiB of message bytes in total.
To reduce request size, send gzip-compressed JSON with the Content-Encoding: gzip header. Retry requests after
a 408, 429, 500, or 503 response.
59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 |
# File 'lib/datadog_api_client/v2/api/ci_visibility_logs_api.rb', line 59 def submit_ci_log_with_http_info(body, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug 'Calling API: CIVisibilityLogsAPI.submit_ci_log ...' end allowable_values = ['identity', 'gzip'] if @api_client.config.client_side_validation && opts[:'content_encoding'] && !allowable_values.include?(opts[:'content_encoding']) fail ArgumentError, "invalid value for \"content_encoding\", must be one of #{allowable_values}" end # verify the required parameter 'body' is set if @api_client.config.client_side_validation && body.nil? fail ArgumentError, "Missing the required parameter 'body' when calling CIVisibilityLogsAPI.submit_ci_log" end if @api_client.config.client_side_validation && body.length > 1000 fail ArgumentError, 'invalid value for "body" when calling CIVisibilityLogsAPI.submit_ci_log, number of items must be less than or equal to 1000.' end # resource path local_var_path = '/api/v2/cilogs' # query parameters query_params = opts[:query_params] || {} # header parameters header_params = opts[:header_params] || {} # HTTP header 'Accept' (if needed) header_params['Accept'] = @api_client.select_header_accept(['application/json']) # HTTP header 'Content-Type' header_params['Content-Type'] = @api_client.select_header_content_type(['application/json']) header_params['Content-Encoding'] = opts[:'content_encoding'] if !opts[:'content_encoding'].nil? # form parameters form_params = opts[:form_params] || {} # http body (model) post_body = opts[:debug_body] || @api_client.object_to_http_body(body) # return_type return_type = opts[:debug_return_type] || 'Object' # auth_names auth_names = opts[:debug_auth_names] || [:apiKeyAuth] = opts.merge( :operation => :submit_ci_log, :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names, :return_type => return_type, :api_version => "V2" ) data, status_code, headers = @api_client.call_api(Net::HTTP::Post, local_var_path, ) if @api_client.config.debugging @api_client.config.logger.debug "API called: CIVisibilityLogsAPI#submit_ci_log\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end |