aiko-monitor

Crates.ioaiko-monitor
lib.rsaiko-monitor
version0.0.9
created_at2025-10-13 09:43:41.45436+00
updated_at2026-01-13 10:34:41.370095+00
descriptionAIKO Monitor SDK for Rust.
homepage
repository
max_upload_size
id1880310
size105,505
(pixqc)

documentation

README

AIKO Monitor Rust

Rust SDK for AIKO Monitoring.

Install

cargo add aiko-monitor --features actix

Set AIKO_PROJECT_KEY and AIKO_SECRET_KEY in your environment before building and running.

Usage

use std::env;
use std::io::Result as IoResult;

use actix_web::middleware::Logger;
use actix_web::{App, HttpResponse, HttpServer, Responder, web};
use aiko_monitor::{Monitor, integrations::actix::ActixMonitor};
use dotenvy::dotenv;

async fn get_users() -> impl Responder {
    HttpResponse::Ok()
        .content_type("application/json")
        .body(r#"{"users": []}"#)
}

#[actix_web::main]
async fn main() -> IoResult<()> {
    dotenv().ok();

    let monitor = Monitor::new(
        env::var("AIKO_PROJECT_KEY").expect("AIKO_PROJECT_KEY must be set"),
        env::var("AIKO_SECRET_KEY").expect("AIKO_SECRET_KEY must be set"),
    )
    .expect("valid monitor configuration");

    HttpServer::new(move || {
        let monitor = monitor.clone();
        App::new()
            .wrap(Logger::default())
            .wrap(ActixMonitor::new(monitor))
            .route("/api/users", web::get().to(get_users))
    })
    .bind(("127.0.0.1", 3000))?
    .run()
    .await
}
Commit count: 0

cargo fmt