error logging and task awaiting

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
This commit is contained in:
microwavedcola1 2022-05-29 09:07:15 +02:00
parent 34a8f0919f
commit 0252e70989
2 changed files with 70 additions and 10 deletions

View File

@ -49,7 +49,7 @@ pub async fn loop_update_index(mango_client: Arc<MangoClient>, pk: Pubkey, bank:
interval.tick().await;
let client = mango_client.clone();
tokio::task::spawn_blocking(move || -> anyhow::Result<()> {
let res = tokio::task::spawn_blocking(move || -> anyhow::Result<()> {
let sig_result = client
.program()
.request()
@ -71,7 +71,19 @@ pub async fn loop_update_index(mango_client: Arc<MangoClient>, pk: Pubkey, bank:
}
Ok(())
});
})
.await;
match res {
Ok(inner_res) => {
if inner_res.is_err() {
log::error!("{}", inner_res.unwrap_err());
}
}
Err(join_error) => {
log::error!("{}", join_error);
}
}
}
}
@ -85,7 +97,7 @@ pub async fn loop_consume_events(
interval.tick().await;
let client = mango_client.clone();
tokio::task::spawn_blocking(move || -> anyhow::Result<()> {
let res = tokio::task::spawn_blocking(move || -> anyhow::Result<()> {
let mut event_queue: EventQueue =
client.program().account(perp_market.event_queue).unwrap();
@ -159,7 +171,19 @@ pub async fn loop_consume_events(
}
Ok(())
});
})
.await;
match res {
Ok(inner_res) => {
if inner_res.is_err() {
log::error!("{}", inner_res.unwrap_err());
}
}
Err(join_error) => {
log::error!("{}", join_error);
}
}
}
}
@ -173,7 +197,7 @@ pub async fn loop_update_funding(
interval.tick().await;
let client = mango_client.clone();
tokio::task::spawn_blocking(move || -> anyhow::Result<()> {
let res = tokio::task::spawn_blocking(move || -> anyhow::Result<()> {
let sig_result = client
.program()
.request()
@ -204,6 +228,18 @@ pub async fn loop_update_funding(
}
Ok(())
});
})
.await;
match res {
Ok(inner_res) => {
if inner_res.is_err() {
log::error!("{}", inner_res.unwrap_err());
}
}
Err(join_error) => {
log::error!("{}", join_error);
}
}
}
}

View File

@ -125,7 +125,7 @@ pub async fn loop_blocking_price_update(
let client1 = mango_client.clone();
let market_name1 = market_name.clone();
let price = price.clone();
tokio::task::spawn_blocking(move || -> anyhow::Result<()> {
let res = tokio::task::spawn_blocking(move || -> anyhow::Result<()> {
let token_name = market_name1.split('/').collect::<Vec<&str>>()[0];
let fresh_price = client1.get_oracle_price(token_name).unwrap();
log::info!("{} Updated price is {:?}", token_name, fresh_price.price);
@ -134,7 +134,19 @@ pub async fn loop_blocking_price_update(
/ I80F48::from_num(10u64.pow(-fresh_price.expo as u32));
}
Ok(())
});
})
.await;
match res {
Ok(inner_res) => {
if inner_res.is_err() {
log::error!("{}", inner_res.unwrap_err());
}
}
Err(join_error) => {
log::error!("{}", join_error);
}
}
}
}
@ -156,7 +168,7 @@ pub async fn loop_blocking_orders(
let market_name = market_name.clone();
let price = price.clone();
tokio::task::spawn_blocking(move || -> anyhow::Result<()> {
let res = tokio::task::spawn_blocking(move || -> anyhow::Result<()> {
client.serum3_settle_funds(&market_name)?;
let fresh_price = match price.read() {
@ -203,6 +215,18 @@ pub async fn loop_blocking_orders(
}
Ok(())
});
})
.await;
match res {
Ok(inner_res) => {
if inner_res.is_err() {
log::error!("{}", inner_res.unwrap_err());
}
}
Err(join_error) => {
log::error!("{}", join_error);
}
}
}
}