- Community Home
- >
- Servers and Operating Systems
- >
- Operating Systems
- >
- Operating System - OpenVMS
- >
- Re: Using f$getdvi
Categories
Company
Local Language
Forums
Discussions
Forums
- Data Protection and Retention
- Entry Storage Systems
- Legacy
- Midrange and Enterprise Storage
- Storage Networking
- HPE Nimble Storage
Discussions
Discussions
Discussions
Forums
Forums
Discussions
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
- BladeSystem Infrastructure and Application Solutions
- Appliance Servers
- Alpha Servers
- BackOffice Products
- Internet Products
- HPE 9000 and HPE e3000 Servers
- Networking
- Netservers
- Secure OS Software for Linux
- Server Management (Insight Manager 7)
- Windows Server 2003
- Operating System - Tru64 Unix
- ProLiant Deployment and Provisioning
- Linux-Based Community / Regional
- Microsoft System Center Integration
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Community
Resources
Forums
Blogs
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО01-05-2009 08:36 AM
тАО01-05-2009 08:36 AM
Using f$getdvi
Using TARGET_DISK = F$DEVICE("*","DISK") for idetifying disk drives, but system services $getdvi doesn't give a clue for nic's of pg devices
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО01-05-2009 09:00 AM
тАО01-05-2009 09:00 AM
Re: Using f$getdvi
#define DC$_DISK 1 /* DISK */
#define DC$_TAPE 2 /* TAPES */
#define DC$_SCOM 32 /* SYNCHRONOUS COMMUNICATIONS DEVICES */
#define DC$_CARD 65 /* CARD READER */
#define DC$_TERM 66 /* TERMINAL */
#define DC$_LP 67 /* LINE PRINTER */
#define DC$_WORKSTATION 70 /* WORKSTATIONS */
#define DC$_REALTIME 96 /* REAL-TIME */
#define DC$_DECVOICE 97 /* DECVOICE products */
#define DC$_AUDIO 98 /* General audio */
#define DC$_VIDEO 99 /* General video */
#define DC$_BUS 128 /* BUSES, E.G, CI */
#define DC$_MAILBOX 160 /* MAILBOX */
#define DC$_REMCSL_STORAGE 170 /* REMOTE CONSOLE STORAGE */
#define DC$_MISC 200 /* MISCELLANEOUS DEVICES */
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО01-05-2009 09:27 AM
тАО01-05-2009 09:27 AM
Re: Using f$getdvi
$ DC$_SCOM = 32 !Synchronous Communications device class
$NIC_LOOP:
$ DEVICE = F$DEVICE("_%%%0:",DC$_SCOM)
$ IF (DEVICE .NES. "")
$ THEN
$ IF (DEVICE .EQS. "_RMA0:") THEN GOTO NIC_LOOP
$ ERRORS = F$GETDVI(DEVICE,"ERRCNT")
$ WRITE SYS$OUTPUT ERRORS," errors on ",DEVICE
$ GOTO NIC_LOOP
$ ENDIF
$!
$PG_LOOP:
$ DEVICE = F$DEVICE("_PG%0:")
$ IF (DEVICE .NES. "")
$ THEN
$ ERRORS = F$GETDVI(DEVICE,"ERRCNT")
$ WRITE SYS$OUTPUT ERRORS," errors on ",DEVICE
$ GOTO PG_LOOP
$ ENDIF
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО01-05-2009 02:20 PM
тАО01-05-2009 02:20 PM
Re: Using f$getdvi
The skeleton of an idea for a brute force approach...
$ set noon
$ pipe show error > x.x
$loop:
$ wait 12:00:00
$ pipe show error > x.x
$ differences/output=nla0: x.x
$ if $status .nes. "%X006C8009"
$ then
$ mail x.x hoffman/subj="Error mail"
$ else
$ purge x.x
$ endif
$ goto loop
Another approach might look to use ANALYZE /ERROR /ELV TRANSLATE with a /SINCE=YESTERDAY selection criteria for DEVICE_ERRORS or CONTROL_ENTRIES or such. (The use of /ELV assumes a sufficiently recent version of OpenVMS.)
If you have a support contract for the hardware, some of the service tools have predictive capabilities.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО01-05-2009 03:32 PM
тАО01-05-2009 03:32 PM
Re: Using f$getdvi
For example
$ SHOW ERROR
$ IF $STATUS.EQS."%X10000001" THEN PIPE SHOW ERROR | MAIL/SUBJECT="Device errors" sys$pipe YOURSELF >nl: 2>nl:
Now you need to clear the error counts.
Here's a quick and nasty procedure that works by parsing the SHOW ERROR display:
$ IF p1.EQS.""
$ THEN
$ PIPE SHOW ERROR | @'F$PARSE(";",F$ENVIRONMENT("PROCEDURE"))' SYS$PIPE
$ EXIT
$ ENDIF
$ OldPriv=F$SETPRV("PHY_IO,CMKRNL,DIAGNOSE")
$ OPEN/READ in 'p1'
$ SET NOON
$ ON CONTROL_Y THEN GOTO EndLoop
$ Loop: READ/END=EndLoop in line
$ dev=F$ELEMENT(0,":",line)
$ IF dev.NES.line THEN SET DEVICE/RESET=ERROR_COUNT 'dev'
$ GOTO Loop
$ EndLoop: CLOSE in
$ SET PROCESS/PRIVILEGE=('OldPriv')
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО01-05-2009 04:42 PM
тАО01-05-2009 04:42 PM
Re: Using f$getdvi
$ SHOW ERROR/OUTPUT=SHOWERROR.TXT
$ DIFFERENCES/OUTPUT SHOWERROR.TXT
$ IF $SEVERITY .EQ. 3 -
THEN MAIL /SUBJECT="Device errors" -
SHOWERROR.DIF SYSTEM
Set a version limit on SHOWERROR.TXT and SHOWERROR.DIF, and it cleans up itself.
Unfortunately, on a reboot you get a mail that shows the counts all went back to 0.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО01-06-2009 12:12 AM
тАО01-06-2009 12:12 AM
Re: Using f$getdvi
I do a show error and if a counter increases I do an diag (or equiv with ca) and if I find "errors not to be ignored" I give an alarm.
Once a day seems too little for me. I look every 10 minutes.
Wim
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО01-06-2009 06:23 AM
тАО01-06-2009 06:23 AM
Re: Using f$getdvi
Jim, I like that list, it give me the expanded ability to chekc other devices
thanks to all
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО01-07-2009 06:10 AM
тАО01-07-2009 06:10 AM
Re: Using f$getdvi
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО01-07-2009 07:16 AM
тАО01-07-2009 07:16 AM
Re: Using f$getdvi
from your Forum Profile:
I have assigned points to 4 of 33 responses to my questions.
Some of the unassigned questions date back to 2005!
Maybe you can find some time to do some assigning?
http://forums1.itrc.hp.com/service/forums/helptips.do?#33
Mind, I do NOT say you necessarily need to give lots of points. It is fully up to _YOU_ to decide how many. If you consider an answer is not deserving any points, you can also assign 0 ( = zero ) points, and then that answer will no longer be counted as unassigned.
Consider, that every poster took at least the trouble of posting for you!
To easily find your streams with unassigned points, click your own name somewhere.
This will bring up your profile.
Near the bottom of that page, under the caption "My Question(s)" you will find "questions or topics with unassigned points " Clicking that will give all, and only, your questions that still have unassigned postings.
Thanks on behalf of your Forum colleagues.
PS. nothing personal in this. I try to post it to everyone with this kind of assignment ratio in this forum. If you have received a posting like this before please do not take offence none is intended!
PPS. Zero points for THIS entry, please.
Proost.
Have one on me.
jpe