NAME
HealthCheck::Diagnostic::SFTP - Check for SFTP access and operations in a HealthCheck
VERSION
version v1.5.0
SYNOPSIS
use HealthCheck::Diagnostic::SFTP;
# Just check that we can connect to a host.
HealthCheck::Diagnostic::SFTP->check(
host => 'sftp.example.com',
user => 'auser',
timeout => 10, # default
);
# Check that the './history' file exists on the host.
HealthCheck::Diagnostic::SFTP->check(
host => 'sftp.example.com',
callback => sub {
my ($sftp) = @_;
my ($directory) = @{ $sftp->ls('history') || [] };
return {
info => 'Looking for "history" file.',
status => $directory ? 'OK' : 'CRITCAL',
};
},
);
DESCRIPTION
This diagnostic allows a process to test SFTP connectivity to a server. You can specify the host and additional parameters and the rest is handled by the diagnostic. Additionally, you can send in a callback to run after connecting for more checks.
ATTRIBUTES
name
A descriptive name for the connection test. This gets populated in the resulting info
tag.
host
The server name to connect to for the test. This is required.
callback
An anonymous sub that can get run after a conneciton is made to the host. This sub receives one argument, the Net::SFTP instance that was recently created.
user
Optional argument that can get passed into the Net::SFTP constructor. Represents the authentication user credential for the host.
password
Optional argument that can get passed into the Net::SFTP constructor. Represents the authentication password credential for the host.
debug
Optional argument that can get passed into the Net::SFTP constructor. Represents whether to print debug information or not.
warn
Optional argument that can get passed into the Net::SFTP constructor. An anonymous sub that gets called when warnings are generated.
ssh_args
Optional argument that can get passed into the Net::SFTP constructor. Additional SSH connection arguments.
timeout
Sets up an ALRM
signal handler used to timeout the initial connection attempt after the number of seconds provided. Defaults to 10.
DEPENDENCIES
Net::SFTP HealthCheck::Diagnostic
CONFIGURATION AND ENVIRONMENT
None
AUTHOR
Grant Street Group <developers@grantstreet.com>
COPYRIGHT AND LICENSE
This software is Copyright (c) 2018 - 2022 by Grant Street Group.
This is free software, licensed under:
The Artistic License 2.0 (GPL Compatible)