License Update
[platform-oam.git] / elk-stack / logstash / pipeline / logstash.conf
1 # ===============LICENSE_START=======================================================
2 # Acumos Apache-2.0
3 # ===================================================================================
4 # Copyright (C) 2017-2019 AT&T Intellectual Property & Tech Mahindra. All rights reserved.
5 # ===================================================================================
6 # This Acumos software file is distributed by AT&T and Tech Mahindra
7 # under the Apache License, Version 2.0 (the "License");
8 # you may not use this file except in compliance with the License.
9 # You may obtain a copy of the License at
10 #
11 # http://www.apache.org/licenses/LICENSE-2.0
12 #
13 # This file is distributed on an "AS IS" BASIS,
14 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 # See the License for the specific language governing permissions and
16 # limitations under the License.
17 # ===============LICENSE_END=========================================================
18 input {
19
20
21 jdbc {
22            jdbc_driver_library => "${ACUMOS_ELK_JDBC_DRIVER_LIBRARY}"
23        jdbc_driver_class => "${ACUMOS_ELK_JDBC_DRIVER_CLASS}"
24            jdbc_connection_string => "${ACUMOS_ELK_JDBC_CONNECTION_STRING}"
25        jdbc_user => "${ACUMOS_ELK_JDBC_USERNAME}"
26        jdbc_password => "${ACUMOS_ELK_JDBC_PASSWORD}"
27        jdbc_validate_connection => true
28            schedule => "0 * * * *"
29        statement => "SELECT * FROM C_SOLUTION_DOWNLOAD"
30        sql_log_level => "error"       
31        tags => ["database"]
32       }
33 jdbc {
34             jdbc_driver_library => "${ACUMOS_ELK_JDBC_DRIVER_LIBRARY}"
35        jdbc_driver_class => "${ACUMOS_ELK_JDBC_DRIVER_CLASS}"
36            jdbc_connection_string => "${ACUMOS_ELK_JDBC_CONNECTION_STRING}"
37        jdbc_user => "${ACUMOS_ELK_JDBC_USERNAME}"
38        jdbc_password => "${ACUMOS_ELK_JDBC_PASSWORD}"
39        jdbc_validate_connection => true
40            schedule => "* * * * *"
41        statement => "SELECT USER_ID,FIRST_NAME,MIDDLE_NAME,LAST_NAME,ORG_NAME,EMAIL,LOGIN_NAME,ACTIVE_YN,LAST_LOGIN_DATE,CREATED_DATE,MODIFIED_DATE,LOGIN_FAIL_COUNT,LOGIN_PASS_EXPIRE_DATE,LOGIN_FAIL_DATE FROM C_USER"
42        sql_log_level => "error"
43        tags => ["database"]
44       }
45 jdbc {
46            jdbc_driver_library => "${ACUMOS_ELK_JDBC_DRIVER_LIBRARY}"
47        jdbc_driver_class => "${ACUMOS_ELK_JDBC_DRIVER_CLASS}"
48            jdbc_connection_string => "${ACUMOS_ELK_JDBC_CONNECTION_STRING}"
49        jdbc_user => "${ACUMOS_ELK_JDBC_USERNAME}"
50        jdbc_password => "${ACUMOS_ELK_JDBC_PASSWORD}"
51        jdbc_validate_connection => true
52            schedule => "0 * * * *"
53        statement => "SELECT * FROM C_SOLUTION_DEPLOYMENT"
54            sql_log_level => "error"
55        tags => ["database"]
56       }
57 jdbc {
58            jdbc_driver_library => "${ACUMOS_ELK_JDBC_DRIVER_LIBRARY}"
59        jdbc_driver_class => "${ACUMOS_ELK_JDBC_DRIVER_CLASS}"
60            jdbc_connection_string => "${ACUMOS_ELK_JDBC_CONNECTION_STRING}"
61        jdbc_user => "${ACUMOS_ELK_JDBC_USERNAME}"
62        jdbc_password => "${ACUMOS_ELK_JDBC_PASSWORD}"
63        jdbc_validate_connection => true
64            schedule => "* * * * *"
65        statement => "SELECT SOLUTION_ID,NAME,VIEW_COUNT,DOWNLOAD_COUNT,RATING_AVG_TENTHS,RATING_COUNT,FEATURED_YN,USER_ID,ACTIVE_YN,MODEL_TYPE_CD,TOOLKIT_TYPE_CD,CREATED_DATE,MODIFIED_DATE,LAST_DOWNLOAD FROM C_SOLUTION"
66            sql_log_level => "error"
67        tags => ["database"]
68       }
69 jdbc {
70            jdbc_driver_library => "${ACUMOS_ELK_JDBC_DRIVER_LIBRARY}"
71        jdbc_driver_class => "${ACUMOS_ELK_JDBC_DRIVER_CLASS}"
72            jdbc_connection_string => "${ACUMOS_ELK_JDBC_CONNECTION_STRING}"
73        jdbc_user => "${ACUMOS_ELK_JDBC_USERNAME}"
74        jdbc_password => "${ACUMOS_ELK_JDBC_PASSWORD}"
75        jdbc_validate_connection => true
76            schedule => "* * * * *"
77        statement => "SELECT * FROM C_SOLUTION_REV"
78            sql_log_level => "error"
79        tags => ["database"]
80       }
81 jdbc {
82            jdbc_driver_library => "${ACUMOS_ELK_JDBC_DRIVER_LIBRARY}"
83        jdbc_driver_class => "${ACUMOS_ELK_JDBC_DRIVER_CLASS}"
84            jdbc_connection_string => "${ACUMOS_ELK_JDBC_CONNECTION_STRING}"
85        jdbc_user => "${ACUMOS_ELK_JDBC_USERNAME}"
86        jdbc_password => "${ACUMOS_ELK_JDBC_PASSWORD}"
87        jdbc_validate_connection => true
88            schedule => "* * * * *"
89        statement => "SELECT * FROM C_CATALOG"
90            sql_log_level => "error"
91        tags => ["database"]
92       }
93 jdbc {
94            jdbc_driver_library => "${ACUMOS_ELK_JDBC_DRIVER_LIBRARY}"
95        jdbc_driver_class => "${ACUMOS_ELK_JDBC_DRIVER_CLASS}"
96            jdbc_connection_string => "${ACUMOS_ELK_JDBC_CONNECTION_STRING}"
97        jdbc_user => "${ACUMOS_ELK_JDBC_USERNAME}"
98        jdbc_password => "${ACUMOS_ELK_JDBC_PASSWORD}"
99        jdbc_validate_connection => true
100            schedule => "* * * * *"
101        statement => "select solution.name,CONCAT(user.first_name,' ',user.last_name) from c_solution solution inner join c_user user on user.USER_ID = solution.USER_ID"
102        sql_log_level => "error"
103        tags => ["database"]
104       }
105
106
107   beats {
108         port => 5000
109   }
110 }
111 filter {  
112
113    kv {
114     source => "Mdc"
115     field_split => ","
116     trim_key => "\s"
117     trim_value => "\s"
118   }
119
120          grok {
121             match => { "message" => "%{TIMESTAMP_ISO8601:LogTimestamp}\t%{GREEDYDATA:Thread}\t%{LOGLEVEL:Level}\t%{JAVACLASS:Logger}\t%{GREEDYDATA:Marker}\t(?:[^\t]+\t)*(?<Mdc>.*)\t%{GREEDYDATA:Message}\t" }
122          }
123
124
125
126 }
127
128
129 output {
130        stdout { codec => json_lines }
131        if "database" in [tags]{
132        elasticsearch {
133        hosts => ["elasticsearch:9200"]
134        index => "testdb"       
135        }
136       }
137     else {
138      elasticsearch {
139        hosts => ["elasticsearch:9200"]
140        index => "logstash"
141            }
142       }
143 }