Typing problem, a list of problem areas, called the area window, is displayed. This list is set up by the problem administrator at your site. It consists of the areas into which problems and bug reports can be logged. A sample area window:
1 apf - for AIX Parallel Fortran problems under AIX/370 2 aix370 - general AIX/370 problems 3 aixws - any workstation related problem 4 dbx - any dbx-related problem 5 AFS or NFS - any AFS or NFS related problemThe areas are numbered from 1 to N, where N is the total number of areas defined at your site. If N is less than ten, you simply need to press the key corresponding to that number to indicate your interest in that area. Otherwise, you must type in the number followed by a carriage return. If there are more areas than lines on your screen, problem will display as many as will fit on the screen by forcing the areas to fit in a series of twenty-five character wide columns. If they still don't all fit on the screen, typing `H' or `?' will scroll through all the areas.
Once you've selected an area, a list of available commands, called the command window, is displayed:
l -- log new problem a -- append to a problem c -- close a problem d -- delete a problem from the database e -- examine a problem q -- quit r -- reorganize the database s -- subscribe to this problem area u -- unsubscribe from this problem area v -- view problem summaries k -- keyword search over problem headers K -- keyword search over problem headers and data M -- modify keyword field R -- reopen a closed problem P -- change priority (severity) of problem T -- transfer problem to another area
Here you are expected to type a single letter symbolizing the command of interest. Typing `H' or `?' will scroll through the list of available commands.
Typing `l', you'll immediately see a screen of the form:
Area networking Logger mjlx Reporter Logged Mon Jun 29 08:56:27 1992 Updated Mon Jun 29 08:56:27 1992 Keywords Summary Status open Site Severity Problem #This is known as the problem header. Here, Reporter is intended to represent the user name or real name of the person who reported the problem, which needn't be the same as Logger. Of course you can fill in any of the fields as you see fit. Severity , which runs from 4 (the lowest) to 1 (the highest) is meant to be some indication of the severity of the problem. The remaining fields have their more or less obvious meaning.
In the above problem header, problem has filled in the fields that it can and will prompt for the others. It will fill in the Problem # field, if and when the problem is really logged, with a positive number unique across all problem areas. There is no limit to the amount of text that can be stored in each field. After filling out this header, problem will invoke the editor in your EDITOR environment variable (or "vi" if not defined), from which you are expected to enter the text of the problem. When you exit from your editor, you'll be prompted as to whether or not you really want to log the problem. Typing `y' logs the problem and returns you to the command window, while typing `n' simply takes you back to the command window.
Here you'll be prompted for the problem # of an existing problem. If a problem of that number actually exists, you'll immediately be brought up into your editor to enter the text of your append. When you exit from your editor, you'll be prompted as to whether or not you really wish to make this append. The Updated field of the problem header will be updated to reflect the time of the append.
Here you'll be prompted for the problem # of an existing problem. If a problem of that number actually exists, you'll immediately be brought up into your editor to enter the text of your close. Closing a problem changes the Status field of the problem entry from "open" to "closed"; it is not removed from the database. It is meant to be an indication that the problem has been solved. Only the original logger of the problem, or the problem administrator can close a problem. The Updated field of the problem header will be updated to reflect the time of the close.
You will be prompted for the problem # of an existing problem. If that problem exists you'll be placed into the pager "less" with a copy of the complete problem header and data of that problem. This way you can then page through the problem and do any thing else you might do from a pager such as saving a copy of the problem or only a portion of it to another file.
Here a list consisting of selected parts of each problem header is displayed on the screen, one per line, called the view window. The fields displayed are: Problem #, Status, Severity (if the problem is open), Updated, and Summary. The lines are sorted: "open" before "closed"; severity 1 to severity 4; and then in most recently updated to least recently updated order. It the text of a line is longer than the screen width the line is truncated and a `!' is place in the final position in the line. The cursor is initially placed in the first column of the first line.
The line the cursor is on is called the current line. The line the cursor is on can be changed using the cursor motion and scrolling commands of vi and emacs, though the cursor will always remain in first column of whatever line it is on. If the current line is longer than the screen width it will be shifted left so that the final screenwidth characters are visible. In this way, by moving the cursor on and off of a line, it is possible to read the complete line, provided that the length of the line is not more than twice the width of your screen. Most of the commands in the command window are accessible from within the view window and apply to the problem in the current line. For example, typing `a' will append to the problem in the current line.
Typing `H' or `?' will scroll through a list of all the valid keypresses from within the view window:
CURSOR MOVEMENT COMMANDS: ? H Display this help. q quit. j n ^N SPC CR Forward one line. DOWN_ARROW_KEY " . k p ^P ^Y Backward one line. UP_ARROW_KEY " . ^F ^V Forward one window. b ^B ESC-V Backward one window. ^D Forward one half-window. ^U Backward one half-window. < Go to first line of listing. > Go to last line of listing. COMMANDS WHICH OPERATE ON THE CURRENT PROBLEM: a Append to current problem. c Close current problem. d Delete current problem. e m v Examine, View, or "more" current problem. M Modify keyword field. r Reorganize the database. P Change the priority (severity) of problem. R Reopen a closed problem. S Save problem listing to a file. T Transfer problem to another area. MISCELLANEOUS COMMANDS: ! starts up a shell. ! cmd executes a shell command !! reexecutes previous shell command. ^L Repaint screen. CR End-of-response when in a prompt. V Print out version string.
You will be added to a list of interested parties for this area. Each time a change is made to the database for this area, every person on the mailing list receives mail indicating the change that was made. In this way, it is easy to keep track of problems without having to regularly read all the areas to see if anything new has happened.
You will be removed from the interested parties mailing list for this area.
You will be prompted for a regular expression which will then be used to search over the problem headers. If there are any matches, the summary lines of each of the problems which matched will be displayed in a view window. For example, if you wished to peruse only open problems, you could search for "open" whereupon you would be put in a view window consisting of only the open problems in the area.
This is similar the the `k' command except that the regular expression search is over the complete problem header and data for each problem.
This command is useful if you want to modify the keyword field. At the authors site, being an IBM stronghold, we place the number of each APAR (Authorized Problem Analysis Report) which supposedly fixes a problem, in the keyword field. This cannot be done when the problem is logged since the APAR number(s) aren't known at that time. You must be the original logger of the problem or the problem administrator to do modify the keywords of a problem.
This command allows the database administrator to delete problems from the database for this area. The problem data is irretrievably removed from the database.
This is an administrative command which can be used after many appends and deletions have been made in the database to shrink it down and make accessing it more efficient. It directly corresponds to the GDBM reorganize command.
This command is useful if you want to modify the priority (severity) of a problem. Given that the original logger of the problem initially chooses the severity, the problem administrator may choose to later change the priority of the problem to reflect the priority from the point of view of the person responsible for fixing the problem. You must be the original logger of the problem or the problem administrator to change the priority of a problem.
This command is useful if you want to move a problem from the current area to another area. You'll be prompted for the area in which to transfer the problem. You must be the original logger of the problem or the problem administrator to transfer a problem.
A closed problem can be reopened with this command. The Status field is changed from "closed" back to "open".
This quits from the command window and returns you to the area window.
Problem can also be invoked with one or more problem areas as arguments. It will then immediately startup in the command window for that area. Typing `q' will then move on to the next problem area, or the area window if no more areas have been specified. If any of the arguments are not valid problem areas, you will also be placed in the area window when problem tries to process that area.