maintenance:general:tools:go_utility
Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revision | |||
| maintenance:general:tools:go_utility [2021/10/22 08:58] – ↷ Links adapted because of a move operation pgels | maintenance:general:tools:go_utility [2024/07/03 12:31] (current) – external edit 127.0.0.1 | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| + | ===== Go utility ===== | ||
| + | Originally created to assist the NetYCE developers to jump between the various directories of the application when using the bash CLI, the '' | ||
| + | |||
| + | The '' | ||
| + | |||
| + | ==== Jumping directories ==== | ||
| + | |||
| + | To use the utility, simply use it as a command with one or two arguments: '' | ||
| + | |||
| + | for example, the user jumps first to the ' | ||
| + | |||
| + | < | ||
| + | $ go sys | ||
| + | goto sys -> / | ||
| + | yce@yceseven / | ||
| + | $ | ||
| + | |||
| + | $ go logs | ||
| + | goto logs -> / | ||
| + | yce@yceseven / | ||
| + | $ | ||
| + | |||
| + | $ go - | ||
| + | goto / | ||
| + | / | ||
| + | yce@yceseven / | ||
| + | $ | ||
| + | </ | ||
| + | |||
| + | The jumps are initially tried as case sensitive but failing a match are attempted as case INsensitive: | ||
| + | |||
| + | < | ||
| + | $ go YCE | ||
| + | goto YCE -> / | ||
| + | yce@yceseven / | ||
| + | $ go yce | ||
| + | goto yce -> / | ||
| + | yce@yceseven / | ||
| + | $ go nms | ||
| + | goto nms -> / | ||
| + | yce@yceseven / | ||
| + | $ | ||
| + | </ | ||
| + | |||
| + | To optimize performance, | ||
| + | |||
| + | The example below demonstrates the initial jump, a subsequent jump and a jump to a job ID: | ||
| + | |||
| + | < | ||
| + | $ go etc | ||
| + | loading paths... | ||
| + | goto etc -> / | ||
| + | yce@yceseven / | ||
| + | $ go logs | ||
| + | goto logs -> / | ||
| + | yce@yceseven / | ||
| + | $ go 0915_0053 | ||
| + | loading paths... | ||
| + | goto 0915_0053 -> / | ||
| + | yce@yceseven / | ||
| + | $ | ||
| + | </ | ||
| + | |||
| + | === Special jumps === | ||
| + | |||
| + | As illustrated in the '' | ||
| + | |||
| + | * The '' | ||
| + | * The '' | ||
| + | * The '' | ||
| + | |||
| + | |||
| + | ==== Application processes ==== | ||
| + | |||
| + | " | ||
| + | |||
| + | == go ps == | ||
| + | |||
| + | The Unix standard ' | ||
| + | |||
| + | The '' | ||
| + | |||
| + | {{guides: | ||
| + | |||
| + | It shows all processes running under the '' | ||
| + | |||
| + | NetYCE daemon processes have their FNAME printed in blue. | ||
| + | |||
| + | At the bottom of the list, any missing processes are listed in red. Any process-ignore flags-files found are also listed here. The example above demonstrates that the '' | ||
| + | |||
| + | |||
| + | == go down == | ||
| + | |||
| + | The '' | ||
| + | |||
| + | < | ||
| + | $ go down | ||
| + | halting NetYCE | ||
| + | stop ' | ||
| + | Stopping daemon ' | ||
| + | stop ' | ||
| + | Stopping daemon ' | ||
| + | stop ' | ||
| + | Daemon ' | ||
| + | stop ' | ||
| + | Stopping httpd: | ||
| + | stop 'yce_* daemons' | ||
| + | stop ' | ||
| + | Shutting down vsftpd: | ||
| + | stop ' | ||
| + | Shutting down MySQL. SUCCESS! | ||
| + | UID PID PPID | ||
| + | yce 6833 | ||
| + | yce 6834 | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | </ | ||
| + | |||
| + | == go up == | ||
| + | |||
| + | The '' | ||
| + | process ignore flags beforehand. | ||
| + | |||
| + | |||
| + | == restart == | ||
| + | |||
| + | The '' | ||
| + | |||
| + | The valid values for '< | ||
| + | |||
| + | * ' | ||
| + | * ' | ||
| + | * ' | ||
| + | * ' | ||
| + | * ' | ||
| + | * ' | ||
| + | * ' | ||
| + | * ' | ||
| + | * ' | ||
| + | * ' | ||
| + | |||
| + | The '' | ||
| + | |||
| + | > NOTE: some restart commands will under the current implementation not function properly. This limitation will be resolved in version 7.1. | ||
| + | |||
| + | |||
| + | ==== Application flags ==== | ||
| + | |||
| + | NetYCE uses within its application two types of application-flags that control process behaviour. These are the **debug flags** and the **ignore flags**. | ||
| + | |||
| + | Both types use the ' | ||
| + | |||
| + | === Debug flags === | ||
| + | |||
| + | The two debug flags are: | ||
| + | * '' | ||
| + | |||
| + | |||
| + | * '' | ||
| + | The debug flag file corresponds with ''/ | ||
| + | |||
| + | The '' | ||
| + | |||
| + | When the **debug** flag is set, the following files are used: | ||
| + | * '' | ||
| + | * '' | ||
| + | * '' | ||
| + | * '' | ||
| + | * '' | ||
| + | * '' | ||
| + | * '' | ||
| + | * '' | ||
| + | |||
| + | When the **development** flag is set, the following file is used: | ||
| + | * '' | ||
| + | |||
| + | All the log files are located in ''/ | ||
| + | |||
| + | |||
| + | === Ignore flags === | ||
| + | |||
| + | The **ignore** flags control the NetYCE process monitoring for the various daemons. The monitoring is performed by the **yce_psmon** daemon which should be running at all times to ensure proper application behaviour. | ||
| + | |||
| + | Monitoring by yce_psmon ensures that the process is behaving within some constraints for cpu usage and number of child processes. When ill-behaved the process is killed and re-spawned. Should a process die by itself or be killed by a user, the process is likewise re-spawned. The parameters for each process it must monitor are specified in the configuration file ''/ | ||
| + | |||
| + | |||
| + | The yce_psmon has a unique flag file configured for each of its daemons. When the flag file is present it indicates the yce_psmon should NOT monitor this process. To stress this behaviour, the flag file is named after the process name prepended by " | ||
| + | |||
| + | The ignore flags can be controlled using the '' | ||
| + | * ' | ||
| + | * ' | ||
| + | * ' | ||
| + | * ' | ||
| + | * ' | ||
| + | * ' | ||
| + | * ' | ||
| + | * ' | ||
| + | * ' | ||
| + | |||
| + | |||
| + | ==== Log file shortcuts ==== | ||
| + | |||
| + | NetYCE support and developers frequently examine (debug) log files. Some specific log-file access shortcuts were included in the ' | ||
| + | |||
| + | These shortcuts are only useful if the **debug** and/or **development** flags are set. | ||
| + | |||
| + | === Database logging === | ||
| + | |||
| + | * '' | ||
| + | |||
| + | * '' | ||
| + | |||
| + | * '' | ||
| + | |||
| + | |||
| + | === Development logging === | ||
| + | |||
| + | * '' | ||
| + | |||
| + | * '' | ||
| + | |||
| + | * '' | ||
| + | |||
| + | |||
| + | === Development compare === | ||
| + | |||
| + | A special command was included to compare two files side by side //on different servers//. This is used mostly to find code changes between different versions. | ||
| + | |||
| + | The command uses '' | ||
| + | |||
| + | The '' | ||
| + | |||
| + | This remote server must be defined in the environment parameter '' | ||
| + | |||
| + | < | ||
| + | if [ -r "/ | ||
| + | export RDEV=" | ||
| + | source "/ | ||
| + | else | ||
| + | echo " | ||
| + | fi | ||
| + | </ | ||
| + | |||
| + | |||
| + | // | ||