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
my $set = $rs->search_by_ip({ip => '192.0.2.1', active => 1});
Like search(), this returns a ResultSet of
matching rows from the NodeIp 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".
my $set = $rs->search_by_dns({
dns => 'foo.example.com',
suffix => qr/(?:\.example\..com|\.local)$/,
active => 1
});
Like search(), this returns a ResultSet of
matching rows from the NodeIp table.
- The NodeIp table must have a "dns"
column for this search to work. Typically this column is the IP's DNS PTR
record, cached at the time of Netdisco Arpnip.
- The "cond" parameter must be a hashref
containing a key "dns" with the value to
search for. The value may optionally include SQL wildcard characters.
- If "dns" is a plain string, then the
"cond" parameter may optionally have a
"suffix" parameter which is a regular
expression of domain names - one of which must match the results.
- 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".
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 NodeIp 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".
my $rset = $rs->ip_version(4);
This predefined search() returns a
ResultSet of matching rows from the NodeIp table of nodes with addresses of
the supplied IP version.
- •
- The "version" parameter must be an
integer either 4 or 6.