Rich Rumble
asked on
Convert open(IN, file) to memory/array instead of using pre-existing files
I'd like to take the following scripts and combine them, as well as change the behaviour slightly. Instead of the data being parsed/matched from pre-existing files, I'd like to SNMPWALK the data, place it in memory, then do the parsing/matching of that data, and then write that data to disk and or a MySql DB.
This is basically the script I want to change, again instead of reading in files, read in data stored in memory from a snmpwalk...
https://www.experts-exchange.com/questions/21850595/Match-IP-address-to-Mac-Address.html#16682292
So we'd do a snmpwalk to get the data, then store to memory (not sure how to really) I'm not sure the best way to walk via perl. Currently I have a cron job that simply runs a shell script to dump the data to directories like this:
snmpwalk -v 2c -c Public -O n device.example.com .1.3.6.1.2.1.17.4.3.1.1 >file1.txt
snmpwalk -v 2c -c Public -O n device.example.com .1.3.6.1.2.1.17.4.3.1.2 >file2.txt
snmpwalk -v 2c -c Public -O n device.example.com .1.3.6.1.2.1.17.1.4.1.2 >file3.txt
snmpwalk -v 2c -c Public -O n device.example.com .1.3.6.1.2.1.31.1.1.1.1 >file4.txt
snmpwalk -v 2c -c Public -O n device.example.com .1.3.6.1.2.1.4.22.1.2 >file5.txt
Then after that cron job completes, I run the script in the above link to match/aggregate the data together for each interface, and it writes that file to disk. I'd like to run the 5 snmpwalks above, then parse that data together and wite it to disk, or even more preferred is to a mysql table.
Thanks!
-rich
This is basically the script I want to change, again instead of reading in files, read in data stored in memory from a snmpwalk...
https://www.experts-exchange.com/questions/21850595/Match-IP-address-to-Mac-Address.html#16682292
So we'd do a snmpwalk to get the data, then store to memory (not sure how to really) I'm not sure the best way to walk via perl. Currently I have a cron job that simply runs a shell script to dump the data to directories like this:
snmpwalk -v 2c -c Public -O n device.example.com .1.3.6.1.2.1.17.4.3.1.1 >file1.txt
snmpwalk -v 2c -c Public -O n device.example.com .1.3.6.1.2.1.17.4.3.1.2 >file2.txt
snmpwalk -v 2c -c Public -O n device.example.com .1.3.6.1.2.1.17.1.4.1.2 >file3.txt
snmpwalk -v 2c -c Public -O n device.example.com .1.3.6.1.2.1.31.1.1.1.1 >file4.txt
snmpwalk -v 2c -c Public -O n device.example.com .1.3.6.1.2.1.4.22.1.2 >file5.txt
Then after that cron job completes, I run the script in the above link to match/aggregate the data together for each interface, and it writes that file to disk. I'd like to run the 5 snmpwalks above, then parse that data together and wite it to disk, or even more preferred is to a mysql table.
Thanks!
-rich
@result = `snmpwalk -v 2c -c Public -O n device.example.com .1.3.6.1.2.1.17.4.3.1.1`;
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
ASKER
that works very well, thanks!
-rich
-rich