'output'에 해당되는 글 4건

  1. 2020.07.21 [Terraform] apply 후 생성 된 정보 구하기.
  2. 2018.04.24 [Logstash] Logstash 를 이용한 CSV 파일 Import를 하려면
  3. 2016.04.20 [Logstash] logstash slack chat output plugin 만들기
  4. 2015.07.29 [Logstash] logstash 개발 및 디버그 시 유용한 설정

[Terraform] apply 후 생성 된 정보 구하기.

ITWeb/개발일반 2020. 7. 21. 08:44

Terraform  을 이용해서 인프라 구성을 한 후에 생성된 정보를 얻어 와야 할 때가 있습니다.

특정 정보만 구하고 싶을 경우 output 설정을 이용해서 얻을 수 있는 방법과 state 를 이용해서 얻을 수 있는 방법이 있습니다.

 

[참고문서]

https://www.terraform.io/docs/commands/output.html

 

tf 설정 파일 내 output 설정을 합니다.

resource "aws_instance" "allinone" {
...중략...
  count = 3
}

output "private_ip" {
  value = "${aws_instance.allinone.*.private_ip}"
}
# 변수 정보를 정상적으로 호출 하지 못할 경우 실행
$ terraform refresh

$ terraform output 변수명
-->
$ terraform output private_ip
[
  "10.0.25.14",
]

 

아래와 같이 하면 모든 state 정보를 return 해 줍니다.

 

$ terraform state pull

 

Trackbacks 0 : Comments 0

Write a comment


[Logstash] Logstash 를 이용한 CSV 파일 Import를 하려면

Elastic/Logstash 2018. 4. 24. 11:14

Elastic 사의 공식 문서를 보시면 쉽게 하실 수 있습니다.


기본 flow 는 아래와 같습니다.


CSV -> logstash input file -> Logstash filter csv -> logstash output elasticsearch


각각에 필요한 참조문서는

[Logstash Input File]

https://www.elastic.co/guide/en/logstash/current/plugins-inputs-file.html


[Logstash Filter CSV]

https://www.elastic.co/guide/en/logstash/current/plugins-filters-csv.html


[Logstash Output Elasticsearch]

https://www.elastic.co/guide/en/logstash/current/plugins-outputs-elasticsearch.html


[Elasticsearch Indices Templates]

https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-templates.html


Template 이 필요한 이유는 csv 파일 데이터에 대한 dynamic mapping 시 의도치 않은 데이터에 대한 형변환 오류를 방지 하기 위함 입니다.

사전에 꼭 정의 하셔서 reindexing 하는 일이 없도록 주의 하시면 좋을 것 같습니다.


Trackbacks 0 : Comments 0

Write a comment


[Logstash] logstash slack chat output plugin 만들기

Elastic/Logstash 2016. 4. 20. 14:11

필요해서 prototype 수준으로 만들어 봤습니다.

추후 input 와 filter 부분에서 필요한 로직을 각자 구현 하시면 될 것 같습니다.


참고문서)

https://api.slack.com/docs/oauth-test-tokens

https://api.slack.com/methods

https://github.com/logstash-plugins/logstash-output-example.git

http://www.rubydoc.info/github/cheald/manticore/Manticore/Client


구현소스)

https://github.com/HowookJeong/logstash-output-slack_chat


실행방법)

    $ bin/logstash -e '
        input {
            stdin{}
        }

        output {
            slack_chat {
                url => "http://slack.com/api/chat.postMessage"
                token => "YOUR_TOKEN_STRING"
                channel => "SLACK_CHANNEL_ID"
            }

            stdout { codec => rubydebug }
        }
    '

아주 간단하죠.

뭐 꼭 logstash plugin 이 아니더라도 일반 httpclient 라이브러리를 이용해서 다양한 방법으로 구현 가능하니 목적에 맞게 구현해서 사용하시면 될 것 같습니다.


Other logstash slack)

https://github.com/cyli/logstash-output-slack

Trackbacks 0 : Comments 0

Write a comment


[Logstash] logstash 개발 및 디버그 시 유용한 설정

Elastic/Logstash 2015. 7. 29. 17:32

제목 쓰기가 참 어렵내요.

logstash를 많이 사용해 보신 분들은 다들 잘 아실 것 같습니다.


저 같은 경우 output 은 거의 elasticsearch를 사용하고 있기 때문에 개발 시 디버깅을 위해서 아래 설정을 많이 이용합니다.


[디버그용 설정]

input {

  http {

    port => 8080

    codec => json_lines {}

  }

}


output {

  stdout {

    codec => rubydebug

  }

}


[디버그용 로그 스태쉬 실행]

$ bin/logstash -e "input { http { port => 8080 codec => json_lines {} } } output { stdout { codec => rubydebug } }"


잘 아시겠지만 output 은 여러개를 지정해 줄 수 있습니다.

실제 elasticsearch로도 색인을 하고 싶으시다면 아래와 같이 하시면 되겠죠.


[ouput - elasticsearch + stdout]

output {

  elasticsearch {

    cluster => "xxxxxx"

    bind_host => "localhost"

    bind_port => "9300"

    protocol => "transport"

    index => "logstash-%{+YYYY.MM.dd}"

  }

  stdout {

    codec => rubydebug

  }

}


Trackbacks 0 : Comments 0

Write a comment