Send netdisco-users mailing list submissions to
        netdisco-users@lists.sourceforge.net

To subscribe or unsubscribe via the World Wide Web, visit
        https://lists.sourceforge.net/lists/listinfo/netdisco-users
or, via email, send a message with subject or body 'help' to
        netdisco-users-requ...@lists.sourceforge.net

You can reach the person managing the list at
        netdisco-users-ow...@lists.sourceforge.net

When replying, please edit your Subject line so it is more specific
than "Re: Contents of netdisco-users digest..."
Today's Topics:

   1. Re: perl script for custom reports (Jethro Binks)
--- Begin Message ---
Notwithstanding any of your own work, for ArubaOS-CX arp tables in particular:

https://github.com/netdisco/netdisco/issues/1379

Jethro.

.  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .

Jethro R Binks, Network Manager,

Information Services Directorate, University Of Strathclyde, Glasgow, UK


The University of Strathclyde is a charitable body, registered in Scotland, 
number SC015263.

________________________________
From: Brian Marshall via netdisco-users <netdisco-users@lists.sourceforge.net>
Sent: 10 September 2025 7:57 PM
To: Oliver Gorwits <oli...@cpan.org>; netdisco-users@lists.sourceforge.net 
<netdisco-users@lists.sourceforge.net>
Subject: Re: [Netdisco] perl script for custom reports


Hi Oliver, thanks for the reply.

I was kind of afraid that it would be a new feature...I am stuck on an old 
branch due to too many changes I haven't been able to upstream...I may end up 
doing something like a custom javascript patch to dynamically create the links 
for now or just live with having to copy/paste. Its a custom CVE tracking 
database I also host in my netdisco db. Would an old version have an easy way 
to define a field to automatically hotlink to eg. the nodes view with the 
column value as the url parameter?

As an aside, I've developed a collector plugin that may be useful in this age 
of limited-or-no-arp-table devices (Aruba CX is the main culprit for me): 
netdisco-flowcollector. I have created a platform file for NFDump, since that's 
what I'm using.

It grabs the source mac/ip of every flow with just the SYN flag set and filters 
out any macs that are associated with more that one IP or that reference a 
known device IP/Alias, which seems to reduce false-positives to basically zero.

I also created a netdisco-apicollector, but the CX series API didn't yield any 
better arp data through the API than the CLI so I abandoned the experiment, but 
the code is mostly complete and working.

Would there be any interest in the code for this?

On 9/8/25 04:05, Oliver Gorwits wrote:
Hi Brian

No problem asking again! A lot has been developed in the past couple of years 
which might help.

One problem with making anything a hyperlink by using Perl munging is that the 
output is then HTML escaped for safety by Netdisco, rendering the link useless. 
This is why the old Plugins I released for Observium and RANCID were quite a 
bit of work, adding template code and so on.

Since then, we have the new external_links and custom_fields features which 
allow these plugins to be entirely replaced by deployment.yml config!

https://github.com/netdisco/netdisco/wiki/Configuration#external_links
https://github.com/netdisco/netdisco/wiki/Configuration#custom_fields

I'm not quite understanding how you attach a CVE number to a device, or do you 
mean you have a separate database to look them up in?

Anyway, you can easily nowadays push some data into a custom field (for a 
device or port), either via API or in a Hook, and then use that custom field in 
a device or port hyperlink, using above config options.

https://github.com/netdisco/netdisco/wiki/Hooks
https://github.com/netdisco/netdisco/wiki/API#update-a-custom-field

If you have another scenario in mind, please elaborate, as this is where the 
features come from! :-)

regards
oliver.

On Sun, 7 Sept 2025 at 21:32, Brian Marshall via netdisco-users 
<netdisco-users@lists.sourceforge.net<mailto:netdisco-users@lists.sourceforge.net>>
 wrote:

Hi list, I know this is a _very_ old thread, but it just kind of ended up with 
a link to the Wiki which, while an excellent source of a lot of things to do 
with custom reports, still doesn't have an example .pm for column munging.

I'd love to be able to do a few things like make some columns into hotlinks 
(eg. CVE numbers going to NIST definitions), but I'm not sure where to get 
started with the "munging".

On 6/24/21 02:14, Ruben Moretti via netdisco-users wrote:

Hi Oliver !

Thanks a lot !

Maybe a Perl script as an example to mung the data that is called up in this 
way? I can't see how to access the input for the script, and I don't know what 
the output should look like either. I only know that the Perl script should 
have the same name as the report tag and must be located under site_plugins.

Thanks in advance,



Am 23.06.2021 um 22:59 schrieb Oliver Gorwits:
A wiki page might do as well - can be collaboratively edited with suggested 
reports and grouped by topic similar to the menus

....time passes...

I created one :) https://github.com/netdisco/netdisco/wiki/Custom-Reports

On Wed, 23 Jun 2021 at 21:36, Michael Butash 
<mich...@butash.net<mailto:mich...@butash.net>> wrote:
Probably nice to make a /contrib directory for these folks could drop into a 
repo for other user-created reports they find useful.

Reading this thread, I was wondering about looking at making a custom report to 
fix nbt node views.  It's really quite annoying it doesn't give the ip address 
in the main view, would be nice to add a like report with just that if not 
adding to the existing one.

-mb


On Tue, Jun 22, 2021 at 11:23 PM Miha Kralj 
<miha.kr...@gmail.com<mailto:miha.kr...@gmail.com>> wrote:
Another nice report is for finding all ports that are: Port down, Admin Up, for 
2 months
This means that ports are not used for at least 2 months and for security 
reasons should be shut down.
The time range is configurable inside the query.

reports:
  - tag: portsdownall
    label: 'Port down, Admin Up - 2 months'
    category: Port
    columns:
    - { host: Device_name}
    - { ip: ip}
    - { port: Port}
    - { name: Description}
    - { status: Status}
    - { status_admin: 'Status Admin'}
    - { last_change: 'Last change'}
    query: |
      SELECT device.name<http://device.name/> AS host, device_port.ip, 
device_port.port, device_port.name<http://device_port.name/>, device_port.up AS 
status, device_port.up_admin AS status_admin,
        to_char((device.last_discover - (device.uptime - 
device_port.lastchange) / 100 * interval '1 second'), 'YYYY-MM-DD HH24:MI:SS') 
as last_change from device_port
      LEFT JOIN device ON device_port.ip = device.ip
      WHERE device_port.up = 'down'
        AND device_port.up_admin = 'up'
        AND device_port.port NOT LIKE '%Vlan%'
        AND (device.last_discover - (device.uptime - device_port.lastchange) /
        100 * interval '1 second') < (now() - interval '2 month')

On Wed, Jun 23, 2021 at 8:07 AM Muris 
<alcat...@gmail.com<mailto:alcat...@gmail.com>> wrote:

Does anyone else have any other handy custom reports they can share?



From: Miha Kralj <miha.kr...@gmail.com<mailto:miha.kr...@gmail.com>>
Date: Wednesday, 23 June 2021 at 15:20
To: Ruben Moretti 
<news.liste...@googlemail.com<mailto:news.liste...@googlemail.com>>
Cc: 
<netdisco-users@lists.sourceforge.net<mailto:netdisco-users@lists.sourceforge.net>>
Subject: Re: [Netdisco] perl script for custom reports



Hi,

There is a simple way to make custom reports...

My way to create custom reports is to place yml code at the end in 
environments/deployment.yml file like this:



reports:

  - tag: List_of_devices

    label: 'List of devices'

    category: Device

    columns:

    - { name: Device}

    - { ip: ip}

    - { creation: First_seen}

    - { last_discover: Last_discover}

    query: |

      SELECT name, ip, creation::timestamp(0), last_discover::timestamp(0) from 
device

        ORDER BY name



After that you can find a report on the web interface "Reports -- > Device -- > 
List of devices".

I hope it helps.



On Sun, Jun 20, 2021 at 3:31 PM Ruben Moretti via netdisco-users 
<netdisco-users@lists.sourceforge.net<mailto:netdisco-users@lists.sourceforge.net>>
 wrote:

Hello !

Can anyone post some simple perl script example  for them ?

Thanks a lot.





https://github.com/netdisco/netdisco/wiki/Configuration#reports

You can munge the data retrieved from the database by placing a Perl script 
with the same name as the reports key into the “site_plugins” directory of 
Netdisco’s home area. The script can access $config for its configuration and 
@data for the retrieved data. It should return a list of munged data



_______________________________________________
Netdisco mailing list
netdisco-users@lists.sourceforge.net<mailto:netdisco-users@lists.sourceforge.net>
https://sourceforge.net/p/netdisco/mailman/netdisco-users/

_______________________________________________
Netdisco mailing list
netdisco-users@lists.sourceforge.net<mailto:netdisco-users@lists.sourceforge.net>
https://sourceforge.net/p/netdisco/mailman/netdisco-users/
_______________________________________________
Netdisco mailing list
netdisco-users@lists.sourceforge.net<mailto:netdisco-users@lists.sourceforge.net>
https://sourceforge.net/p/netdisco/mailman/netdisco-users/




_______________________________________________
Netdisco mailing list
netdisco-users@lists.sourceforge.net<mailto:netdisco-users@lists.sourceforge.net>
https://sourceforge.net/p/netdisco/mailman/netdisco-users/




_______________________________________________
Netdisco mailing list
netdisco-users@lists.sourceforge.net<mailto:netdisco-users@lists.sourceforge.net>
https://sourceforge.net/p/netdisco/mailman/netdisco-users/

_______________________________________________
Netdisco mailing list
netdisco-users@lists.sourceforge.net<mailto:netdisco-users@lists.sourceforge.net>
https://sourceforge.net/p/netdisco/mailman/netdisco-users/

--- End Message ---
_______________________________________________
Netdisco mailing list - Digest Mode
netdisco-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/netdisco-users

Reply via email to