system_information
System Information
Functions
sanity_check() -> ok | {failed, Failures}
Application = atom()
ApplicationVersion = string()
MissingRuntimeDependencies =
{missing_runtime_dependencies,
ApplicationVersion,
[ApplicationVersion]}InvalidApplicationVersion =
{invalid_application_version, ApplicationVersion}InvalidAppFile = {invalid_app_file, Application}
Failure = MissingRuntimeDependencies
| InvalidApplicationVersion
| InvalidAppFileFailures = [Failure]
Performs a sanity check on the system. If no issues
were found, ok
is returned. If issues were
found, {failed,
is
returned. All failures found will be part of the
list. Currently defined
elements in the
list:
InvalidAppFile
An application has an invalid .app
file. The
second element identifies the application which has the
invalid .app
file.
InvalidApplicationVersion
An application has an invalid application version. The second element identifies the application version that is invalid.
MissingRuntimeDependencies
An application is missing runtime dependencies. The second element identifies the application (with version) that has missing dependencies. The third element contains the missing dependencies.
Note that this check use application versions that are loaded, or will be loaded when used. You might have application versions that satisfies all dependencies installed in the system, but if those are not loaded this check will fail. The system will of course also fail when used like this. This may happen when you have multiple branched versions of the same application installed in the system, but you do not use a boot script identifing the correct application version.
Currently the sanity check is limited to verifying
runtime dependencies found in the .app
files of
all applications. More checks will be introduced in the
future. This implies that the return type will
change in the future.
Note!
An ok
return value only means that
sanity_check/0
did not find any issues, not
that no issues exist.
to_file(FileName) -> ok | {error, Reason}
FileName = file:name_all()
Reason = file:posix() | badarg | terminated | system_limit
Writes miscellaneous system information to file. This information will typically be requested by the Erlang/OTP team at Ericsson AB when reporting an issue.