with_times

This is a modifier for any search() (including the helpers below) which will add the following additional synthesized columns to the result set:

time_first_stamp
time_last_stamp

search_by_ip( \%cond, \%attrs? )

my $set = $rs->search_by_ip({ip => '192.0.2.1', active => 1});

Like search(), this returns a ResultSet of matching rows from the NodeNbt table.

  • The cond parameter must be a hashref containing a key ip with the value to search for. Value can either be a simple string of IPv4 or IPv6, or a NetAddr::IP::Lite object in which case all results within the CIDR/Prefix will be retrieved.

  • Results are ordered by time last seen.

  • Additional columns time_first_stamp and time_last_stamp provide preformatted timestamps of the time_first and time_last fields.

  • A JOIN is performed on the Manufacturer table and the Manufacturer company column prefetched.

To limit results only to active IPs, set {active => 1} in cond.

search_by_name( \%cond, \%attrs? )

my $set = $rs->search_by_name({nbname => 'MYNAME', active => 1});

Like search(), this returns a ResultSet of matching rows from the NodeNbt table.

  • The cond parameter must be a hashref containing a key nbname with the value to search for. The value may optionally include SQL wildcard characters.

  • Results are ordered by time last seen.

  • Additional columns time_first_stamp and time_last_stamp provide preformatted timestamps of the time_first and time_last fields.

  • A JOIN is performed on the Manufacturer table and the Manufacturer company column prefetched.

To limit results only to active IPs, set {active => 1} in cond.

search_by_mac( \%cond, \%attrs? )

my $set = $rs->search_by_mac({mac => '00:11:22:33:44:55', active => 1});

Like search(), this returns a ResultSet of matching rows from the NodeNbt table.

  • The cond parameter must be a hashref containing a key mac with the value to search for.

  • Results are ordered by time last seen.

  • Additional columns time_first_stamp and time_last_stamp provide preformatted timestamps of the time_first and time_last fields.

  • A JOIN is performed on the Manufacturer table and the Manufacturer company column prefetched.

To limit results only to active IPs, set {active => 1} in cond.