Skip to content

Commit fb8f33e

Browse files
committed
added logging functionality
1 parent 5f70c11 commit fb8f33e

File tree

3 files changed

+29
-42
lines changed

3 files changed

+29
-42
lines changed

kotlin/services/cloudwatch/build.gradle.kts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,8 @@ dependencies {
4040
implementation("com.fasterxml.jackson.core:jackson-databind:2.14.2")
4141
testImplementation("org.junit.jupiter:junit-jupiter:5.9.2")
4242
implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:1.6.4")
43+
implementation("org.slf4j:slf4j-api:2.0.15")
44+
implementation("org.slf4j:slf4j-simple:2.0.15")
4345
}
4446
tasks.withType<KotlinCompile> {
4547
kotlinOptions.jvmTarget = "17"

kotlin/services/cloudwatch/src/test/kotlin/CloudWatchTest.kt

Lines changed: 16 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
22
// SPDX-License-Identifier: Apache-2.0
33

4-
import aws.sdk.kotlin.runtime.auth.credentials.EnvironmentCredentialsProvider
54
import aws.sdk.kotlin.services.secretsmanager.SecretsManagerClient
65
import aws.sdk.kotlin.services.secretsmanager.model.GetSecretValueRequest
76
import com.google.gson.Gson
@@ -27,10 +26,13 @@ import org.junit.jupiter.api.Order
2726
import org.junit.jupiter.api.Test
2827
import org.junit.jupiter.api.TestInstance
2928
import org.junit.jupiter.api.TestMethodOrder
29+
import org.slf4j.Logger
30+
import org.slf4j.LoggerFactory
3031

3132
@TestInstance(TestInstance.Lifecycle.PER_CLASS)
3233
@TestMethodOrder(OrderAnnotation::class)
3334
class CloudWatchTest {
35+
private val logger: Logger = LoggerFactory.getLogger(CloudWatchTest::class.java)
3436
private var logGroup = ""
3537
private var alarmName = ""
3638
private var streamName = ""
@@ -79,137 +81,110 @@ class CloudWatchTest {
7981
dashboardAddSc = values.dashboardAddSc.toString()
8082
settingsSc = values.settingsSc.toString()
8183
metricImageSc = values.metricImageSc.toString()
82-
83-
// Uncomment this code block if you prefer using a config.properties file to retrieve AWS values required for these tests.
84-
/*
85-
val input: InputStream = this.javaClass.getClassLoader().getResourceAsStream("config.properties")
86-
val prop = Properties()
87-
prop.load(input)
88-
logGroup = prop.getProperty("logGroup")
89-
alarmName = prop.getProperty("alarmName")
90-
streamName = prop.getProperty("streamName")
91-
ruleResource = prop.getProperty("ruleResource")
92-
metricId = prop.getProperty("metricId")
93-
filterName = prop.getProperty("filterName")
94-
destinationArn = prop.getProperty("destinationArn")
95-
roleArn = prop.getProperty("roleArn")
96-
filterPattern = prop.getProperty("filterPattern")
97-
instanceId = prop.getProperty("instanceId")
98-
ruleName = prop.getProperty("ruleName")
99-
ruleArn = prop.getProperty("ruleArn")
100-
namespace = prop.getProperty("namespace")
101-
myDateSc = prop.getProperty("myDateSc")
102-
costDateWeekSc = prop.getProperty("costDateWeekSc")
103-
dashboardNameSc = prop.getProperty("dashboardNameSc")
104-
dashboardJsonSc = prop.getProperty("dashboardJsonSc")
105-
dashboardAddSc = prop.getProperty("dashboardAddSc")
106-
settingsSc = prop.getProperty("settingsSc")
107-
metricImageSc = prop.getProperty("metricImageSc")
108-
*/
10984
}
11085

11186
@Test
11287
@Order(1)
11388
fun createAlarmTest() =
11489
runBlocking {
11590
putAlarm(alarmName, instanceId)
116-
println("Test 1 passed")
91+
logger.info("Test 1 passed")
11792
}
11893

11994
@Test
12095
@Order(2)
12196
fun describeAlarmsTest() =
12297
runBlocking {
12398
desCWAlarms()
124-
println("Test 2 passed")
99+
logger.info("Test 2 passed")
125100
}
126101

127102
@Test
128103
@Order(3)
129104
fun createSubscriptionFiltersTest() =
130105
runBlocking {
131106
putSubFilters(filterName, filterPattern, logGroup, destinationArn)
132-
println("Test 3 passed")
107+
logger.info("Test 3 passed")
133108
}
134109

135110
@Test
136111
@Order(4)
137112
fun describeSubscriptionFiltersTest() =
138113
runBlocking {
139114
describeFilters(logGroup)
140-
println("Test 4 passed")
115+
logger.info("Test 4 passed")
141116
}
142117

143118
@Test
144119
@Order(5)
145120
fun disableAlarmActionsTest() =
146121
runBlocking {
147122
disableActions(alarmName)
148-
println("Test 5 passed")
123+
logger.info("Test 5 passed")
149124
}
150125

151126
@Test
152127
@Order(6)
153128
fun enableAlarmActionsTest() =
154129
runBlocking {
155130
enableActions(alarmName)
156-
println("Test 6 passed")
131+
logger.info("Test 6 passed")
157132
}
158133

159134
@Test
160135
@Order(7)
161136
fun getLogEventsTest() =
162137
runBlocking {
163138
getCWLogEvents(logGroup, streamName)
164-
println("Test 7 passed")
139+
logger.info("Test 7 passed")
165140
}
166141

167142
@Test
168143
@Order(8)
169144
fun putCloudWatchEventTest() =
170145
runBlocking {
171146
putCWEvents(ruleResource)
172-
println("Test 8 passed")
147+
logger.info("Test 8 passed")
173148
}
174149

175150
@Test
176151
@Order(9)
177152
fun getMetricDataTest() =
178153
runBlocking {
179154
getMetData()
180-
println("Test 9 passed")
155+
logger.info("Test 9 passed")
181156
}
182157

183158
@Test
184159
@Order(10)
185160
fun deleteSubscriptionFilterTest() =
186161
runBlocking {
187162
deleteSubFilter(filterName, logGroup)
188-
println("Test 10 passed")
163+
logger.info("Test 10 passed")
189164
}
190165

191166
@Test
192167
@Order(11)
193168
fun putRuleTest() =
194169
runBlocking {
195170
putCWRule(ruleName, ruleArn)
196-
println("Test 11 passed")
171+
logger.info("Test 11 passed")
197172
}
198173

199174
@Test
200175
@Order(12)
201176
fun putLogEvents() =
202177
runBlocking {
203178
putCWLogEvents(logGroup, streamName)
204-
println("Test 12 passed")
179+
logger.info("Test 12 passed")
205180
}
206181

207182
@Test
208183
@Order(13)
209184
fun deleteCWAlarmTest() =
210185
runBlocking {
211186
deleteCWAlarm(alarmName)
212-
println("Test 13 passed")
187+
logger.info("Test 13 passed")
213188
}
214189

215190
private suspend fun getSecretValues(): String {
@@ -220,7 +195,6 @@ class CloudWatchTest {
220195
}
221196
SecretsManagerClient {
222197
region = "us-east-1"
223-
credentialsProvider = EnvironmentCredentialsProvider()
224198
}.use { secretClient ->
225199
val valueResponse = secretClient.getSecretValue(valueRequest)
226200
return valueResponse.secretString.toString()
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
<configuration>
2+
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
3+
<encoder>
4+
<pattern>%d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %logger{36} - %msg%n</pattern>
5+
</encoder>
6+
</appender>
7+
8+
<root level="info">
9+
<appender-ref ref="STDOUT"/>
10+
</root>
11+
</configuration>

0 commit comments

Comments
 (0)