/logstash-output-opensearch

A Logstash plugin that sends event data to a OpenSearch clusters and stores as an index.

Primary LanguageRubyApache License 2.0Apache-2.0

Build and Test logstash-output-opensearch plugin PRs welcome!

Logstash Output OpenSearch

Welcome!

logstash-output-opensearch is a community-driven, open source fork logstash-output-elasticsearch licensed under the Apache v2.0 License. For more information, see opensearch.org.

The logstash-output-opensearch plugin helps to ship events from Logstash to OpenSearch cluster.

Project Resources

Configuration for Logstash Output Opensearch Plugin

To run the Logstash Output Opensearch plugin, add following configuration in your logstash.conf file.

output {
    opensearch {
        hosts       => ["hostname:port"]
        user        => "admin"
        password    => "admin"
        index       => "logstash-logs-%{+YYYY.MM.dd}"
    }
}

To run the Logstash Output Opensearch plugin using aws_iam authentication, refer to the sample configuration shown below:

output {        
   opensearch {     
          hosts => ["hostname:port"]              
          auth_type => {    
              type => 'aws_iam'     
              aws_access_key_id => 'ACCESS_KEY'     
              aws_secret_access_key => 'SECRET_KEY'     
              region => 'us-west-2'         
          }         
          index  => "logstash-logs-%{+YYYY.MM.dd}"      
   }            
}

In addition to the existing authentication mechanisms, if we want to add new authentication then we will be adding them in the configuration by using auth_type.

Example Configuration for basic authentication:

output {    
    opensearch {        
          hosts  => ["hostname:port"]     
          auth_type => {            
              type => 'basic'           
              user => 'admin'           
              password => 'admin'           
          }             
          index => "logstash-logs-%{+YYYY.MM.dd}"       
   }            
}  

To ingest data into a data stream through logstash, we need to create the data stream and specify the name of data stream and the op_type of create in the output configuration. The sample configuration is shown below:

output {    
    opensearch {        
          hosts  => ["https://hostname:port"]     
          auth_type => {            
              type => 'basic'           
              user => 'admin'           
              password => 'admin'           
          }
          index => "my-data-stream"
          action => "create"
   }            
}               

For more details refer to this documentation

Code of Conduct

This project has adopted the Amazon Open Source Code of Conduct. For more information see the Code of Conduct FAQ, or contact opensource-codeofconduct@amazon.com with any additional questions or comments.

License

This project is licensed under the Apache v2.0 License.

Copyright

Copyright OpenSearch Contributors. See NOTICE for details.