Removed default values for jdbc parameters
[platform-oam.git] / elk-stack / logstash / pipeline / logstash.conf
1 # ===============LICENSE_START=======================================================
2 # Acumos Apache-2.0
3 # ===================================================================================
4 # Copyright (C) 2017-2018 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 => "* * * * *"
29        statement => "SELECT * FROM C_SOLUTION_DOWNLOAD"
30        type => "solution_downloaded"
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 * FROM C_USER"
42        type => "no_of_user"
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 => "* * * * *"
53        statement => "SELECT * FROM C_SOLUTION_DEPLOYMENT"
54        type => "solution_deployed"
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 * FROM C_SOLUTION"
66        type => "all_solution"
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 WHERE ACCESS_TYPE_CD='OR'"
78        type => "company_model"
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_SOLUTION WHERE ACCESS_TYPE_CD='PB'"
90        type => "public_model"
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.OWNER_ID"
102        type => "name_model"
103        tags => ["database"]
104       }
105
106
107
108
109
110   beats {
111         port => 5000
112         codec => plain {
113                  charset => "ISO-8859-1"
114                  }        
115   }
116 }
117 filter {
118      
119   if ([source] =~ /access.log$/){
120        grok {
121           match => { "message" => "%{TIMESTAMP_ISO8601:timestamp}\|%{WORD:moduleName}\|%{WORD:userAgent}\|%{NOTSPACE:urlDefault}\|%{LOGLEVEL:loglevel}\|\|%{GREEDYDATA:unstructured_data}\|%{SPACE}%{SPACE}(?<actualData>(.|\r|\n)*)" }
122        }
123   }
124   if ([source] =~ /application.log$/){
125        grok {
126           match => { "message" => "%{TIMESTAMP_ISO8601:timestamp}\|\|\|%{NOTSPACE:app}\|\|\|\|%{LOGLEVEL:loglevel}\|\|\|\|\|\|\|%{SPACE}%{GREEDYDATA:actualData}" }
127        }
128   }
129   if ([source] =~ /debug.log$/){
130        grok {
131           match => { "message" => "%{TIMESTAMP_ISO8601:timestamp}\|\|\|%{NOTSPACE:app}\|\|\|\|%{LOGLEVEL:loglevel}\|\|\|\|\|%{SPACE}%{GREEDYDATA:packageName}\|\|%{SPACE}(?<actualData>(.|\r|\n)*)" }
132        }
133   }
134   if ([source] =~ /error.log$/){
135        grok {
136           match => { "message" => "%{TIMESTAMP_ISO8601:timestamp}\|\|\|%{NOTSPACE:app}\|\|\|\|%{LOGLEVEL:loglevel}\|\|\|\|\|%{SPACE}%{GREEDYDATA:packageName}\|\|%{SPACE}(?<actualData>(.|\r|\n)*)" }
137        }
138   }
139
140 }
141
142
143 output {
144        stdout { codec => json_lines }
145        if "database" in [tags]{
146        elasticsearch {
147        hosts => ["elasticsearch:9200"]
148        index => "testdb"
149        document_type => "%{type}"
150        }
151       }
152     else {
153      elasticsearch {
154        hosts => ["elasticsearch:9200"]
155        index => "logstash"
156            }
157       }
158 }