Subject: | Add pool member status methods |
Please consider the attached patch. It adds some pool member status methods for querying information about individual pool members.
Subject: | pool_member_status.patch |
diff --git a/iControl.pm.orig b/iControl.pm.new
index 7e07c2d..bf2fe5e 100644
--- a/iControl.pm.orig
+++ b/iControl.pm.new
@@ -105,6 +105,7 @@ our $modules = {
get_member_object_status=> {pool_names => 1, members => 1}
},
PoolMember => {
get_object_status => 'pool_names',
get_statistics => {pool_names => 1, members => 1},
get_all_statistics => 'pool_names',
},
@@ -1683,6 +1684,20 @@ sub get_pool_member_statistics {
members => $self->__get_pool_members($pool,'LocalLB') });
}
=head3 get_pool_member_object_status ($pool)
Returns all pool member stati for the specified pool as an array of MemberObjectStatus objects.
=cut
sub get_pool_member_object_status {
my ($self, $pool) = @_;
return $self->_request(module => 'LocalLB', interface => 'PoolMember', method => 'get_object_status', data => {
pool_names => [$pool],
});
}
=head3 get_pool_member_statistics_stringified ($pool)
my %stats = $ic->get_pool_member_statistics_stringified($pool);
@@ -1747,6 +1762,20 @@ sub get_ltm_pool_status {
return @{$self->_request(module => 'LocalLB', interface => 'Pool', method => 'get_object_status', data => {pool_names => [$pool]})}[0]
}
=head3 get_ltm_pool_member_status ($pool, $member)
Returns the status of the specified member in the specified pool as a ObjectStatus object.
=cut
sub get_ltm_pool_member_status {
my ($self, $pool, $member) = @_;
return @{$self->_request(module => 'LocalLB', interface => 'Pool', method => 'get_member_object_status', data => {
pool_names => [$pool],
members => [$member],
})}[0];
}
=head3 get_ltm_pool_availability_status ($pool)
Retuns the availability status of the specified pool.