tangled
alpha
login
or
join now
bwc9876.dev
/
bingus-bot
0
fork
atom
The world's most clever kitty cat
0
fork
atom
overview
issues
pulls
pipelines
Handle SIGTERM
bwc9876.dev
1 day ago
f20feff8
d009ae2d
verified
This commit was signed with the committer's
known signature
.
bwc9876.dev
SSH Key Fingerprint:
SHA256:DanMEP/RNlSC7pAVbnXO6wzQV00rqyKj053tz4uH5gQ=
+7
-1
1 changed file
expand all
collapse all
unified
split
src
main.rs
+7
-1
src/main.rs
···
26
26
use log::{debug, error, info, warn};
27
27
use prelude::*;
28
28
use tokio::{
29
29
+
signal::unix::{SignalKind, signal},
29
30
sync::RwLock,
30
31
time::{self, Duration},
31
32
};
···
212
213
213
214
let mut interval = time::interval(Duration::from_secs(60));
214
215
interval.tick().await;
215
215
-
tokio::pin!(interval);
216
216
+
217
217
+
let mut sigterm = signal(SignalKind::terminate()).context("Failed to listen to SIGTERM")?;
216
218
217
219
info!("Connecting to gateway...");
218
220
···
223
225
224
226
Ok(()) = tokio::signal::ctrl_c() => {
225
227
info!("SIGINT: Closing connection and saving");
228
228
+
shard.close(CloseFrame::NORMAL);
229
229
+
}
230
230
+
_ = sigterm.recv() => {
231
231
+
info!("SIGTERM: Closing connection and saving");
226
232
shard.close(CloseFrame::NORMAL);
227
233
}
228
234
_ = interval.tick() => {