Crate domain_status

Crate domain_status 

Source
Expand description

domain_status library: core URL scanning functionality

This library provides high-level APIs for scanning URLs and capturing comprehensive metadata including HTTP status, TLS certificates, DNS information, technology fingerprints, and more.

§Example

use domain_status::{Config, run_scan};
use tokio;

let config = Config {
    file: std::path::PathBuf::from("urls.txt"),
    max_concurrency: 50,
    rate_limit_rps: 20,
    ..Default::default()
};

let report = run_scan(config).await?;
println!("Processed {} URLs: {} succeeded, {} failed",
         report.total_urls, report.successful, report.failed);

§Requirements

This library requires a Tokio runtime. Use #[tokio::main] in your application or ensure you’re calling library functions within an async context.

Re-exports§

pub use config::Config;
pub use config::FailOn;
pub use config::LogFormat;
pub use config::LogLevel;

Modules§

config
Application configuration and constants.
export
Export functionality for domain_status data.
initialization
Application initialization and resource setup.

Structs§

RunSummary
Summary of a completed run, suitable for displaying run history.
ScanReport
Results of a URL scanning run.

Functions§

init_db_pool_with_path
Initializes and returns a database connection pool with an explicit path.
query_run_history
Query run history from the database.
run_migrations
Runs SQLx migrations embedded in the binary.
run_scan
Runs a URL scan with the provided configuration.