dce1c7b543e250a8ceb94a00a88d7b8cd4258f0a
[jalview.git] / help / help / html / logging.html
1 <html>
2 <!--
3  * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$)
4  * Copyright (C) $$Year-Rel$$ The Jalview Authors
5  * 
6  * This file is part of Jalview.
7  * 
8  * Jalview is free software: you can redistribute it and/or
9  * modify it under the terms of the GNU General Public License 
10  * as published by the Free Software Foundation, either version 3
11  * of the License, or (at your option) any later version.
12  *  
13  * Jalview is distributed in the hope that it will be useful, but 
14  * WITHOUT ANY WARRANTY; without even the implied warranty 
15  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
16  * PURPOSE.  See the GNU General Public License for more details.
17  * 
18  * You should have received a copy of the GNU General Public License
19  * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
20  * The Jalview Authors are detailed in the 'AUTHORS' file.
21  -->
22 <head>
23 <title>The Java Console, Logging and Reporting Bugs</title>
24 </head>
25 <body>
26   <p>
27     <strong>The Java Console, Logging and Reporting Bugs<br /></strong>
28   </p>
29   <p>Like most programs, Jalview produces a series of messages
30     during its operation, often referred to as 'logs'. These logs can be
31     extremely useful for diagnosing and helping the Jalview developers
32     find a workaround for specific problems that you might encounter.</p>
33   <p>
34     The primary place to look for logs is in the <a href="#java_console">Java
35       Console</a> which you can open from within Jalview by going to the <em>Tools</em>
36     menu and checking the box next to <em>Show Java Console</em>. This
37     option is stored in your Jalview preferences file and so is
38     remembered across Jalview sessions.
39   </p>
40   <p>The Java Console will show you information about what the
41     Jalview application is doing (often in the background) whilst it is
42     running.</p>
43   <p>However, when tracking down problems preventing Jalview from
44     starting up properly, you need to look at the startup logs - which
45     are not shown in the Jalview Console. The location of these depends
46     on how you launched Jalview:</p>
47   <p>
48     <strong>Jalview Desktop Installations</strong><br />If you are using
49     a standard desktop version of Jalview installed from one of our
50     install4j installers, then messages about Jalview's initial launch
51     can be found in
52   <pre>JALVIEW_APP_DIR/launcher.log</pre>
53   where
54   <em>JALVIEW_APP_DIR</em> is the directory that Jalview's application
55   was installed into.
56   <br /> For Jalview 2.11.0 onwards:
57   <ul>
58     <li>In Windows this is <em>%APPDATA%\Local\Jalview</em> by
59       default
60     </li>
61     <li>In macOS this is <em>/Applications/Jalview.app/Contents/Resources/app</em>
62       by default
63     </li>
64     <li>In Linux and other Unix OSes this is <em>~/opt/jalview</em>
65       by default
66     </li>
67   </ul>
68   <p><strong>Jalview Executable Jar</strong><br/>If you are using the Jalview executable jar file (also
69   used by bioconda and OSX homebrew installations) then the default run class (
70   <em>jalview.bin.Launcher</em> -- a minimised launcher that will set
71   memory and linux dpi settings before re-launching
72   <em>jalview.bin.Jalview</em>), will output logging information to
73   STDOUT and STDERR.
74   </p>
75
76   <p><strong>
77     <a name="java_console">Java Console and Log Level</a>
78   </strong></p>
79   <p>
80     The Java Console is opened by selecting <strong>Tools
81       &rarr; Show Java Console</strong>. The visibility of the console is stored
82     in your preferences, so if you quit Jalview with the console open,
83     it will be shown the next time you start Jalview. You can close the
84     console by selecting the same menu option again, or just closing the
85     console window.
86   </p>
87   <p>The Java Console's text display always shows information about
88     your system and Jalview installation details. The rest are the most
89     recent messages output during your Jalview session. Some messages
90     are only captured by the console when it is open, so to get a full
91     log for debugging a problem, enable the console and then restart
92     Jalview.</p>
93
94   <p>
95     You can temporarily control the detail of what appears as output by
96     selecting a <em>Log level</em> using the drop-down list at the
97     bottom left of the console. There are several levels to choose from:
98     The most verbose is TRACE, followed by DEBUG, INFO, WARN. When the
99     Console is opened, the default level will be chosen (INFO).
100   </p>
101   <p>
102     <strong>Note! If you change the log level in the Java
103       Console, this change will only persist for as long as the console
104       is open. Once you close the console the log level will revert back
105       to what it had been when you opened the console (usually INFO).</strong>
106   </p>
107   <p><strong>Permanently changing Jalview's default log level</strong><br/>
108     You can change the default log level by editing the Jalview
109     preferences file, <em>.jalview_properties</em>, found in your home
110     directory (on Windows: %HOMEPATH%, or the folder above 'My
111     Documents'; on macOS: ~ or /Users/<em>username</em>; on linux/unix:
112     ~ or /home/<em>username</em>), and setting the property <em>logs.Jalview.level</em>
113     to the log level you prefer, e.g.
114   <pre>
115   logs.Jalview.level=DEBUG
116   </pre>
117   You can also set the property
118   <pre>
119   logs.Axis.level=DEBUG
120   </pre>
121   <p>to get debug information for Jalview's JPred service. The Axis log
122   level cannot be set from within the Java Console.
123   </p>
124   <p>
125     You can also set the <em>logs.jalview.level</em> property to a log level
126     not usually presented in the Java Console (though restricted to log
127     levels used by Apache Log4j -- see <a
128       href="https://logging.apache.org/log4j/2.x/manual/customloglevels.html">Log4j
129       Custom Log Levels</a> for details of the standard log levels
130     available). Jalview does not currently define any custom log levels.
131     If you do set the property with a log level that is normally not
132     visible in the Java Console this should be respected and visibly
133     selected when you open the console.
134   </p>
135   <p>
136     The <em>Clear</em> button at the bottom of the console will clear
137     all logging messages except for the initial system information which
138     is rewritten to the console.
139   </p>
140   <p>
141     The <em>Copy to clipboard</em> button at the bottom right of the
142     console will copy all of the text in the console to your system
143     clipboard, ready to paste into another application (e.g. email
144     composer or issue tracker).
145   </p>
146
147   <h3>Reporting Bugs</h3>
148
149   <p>
150     If you come across a problem in Jalview where something is not
151     working as described, or how you think it should, you should first
152     check the <a href="https://www.jalview.org/faq">Jalview FAQ</a> to
153     see if this is a known problem and if there is a suggested
154     workaround.
155   </p>
156   <p>
157     If there is no FAQ answer covering your problem then you can submit
158     a bug report on the <a href="https://issues.jalview.org/">Jalview
159       Issue Tracker</a>. It is good practice to search the issue tracker
160     first to see if the issue has already been reported. If an issue
161     already exists please continue to add your own comments to the issue
162     which may well help narrow down the problem, if not then you can
163     create an account and submit a new bug report:
164   </p>
165   <p>
166     Make sure that you set Project to <em>Jalview (JAL)</em>, and Issue
167     Type to <em>Bug</em> or <em>New Feature</em> or <em>Improvement</em>
168     appropriately.<br /> Give a one line summary of the issue in the <em>Summary</em>.
169     <br /> In the <em>Environment</em> text box you can describe the
170     system you are using. This is usually most easily done by opening
171     the Java Console, clicking the <em>Clear</em> button, and then
172     immediately on the <em>Copy to clipboard</em> button, and then
173     pasting the clipboard into the text box.
174   </p>
175   <p>
176     You can then give more detailed information about how to recreate
177     the problem in the <em>Description</em> text box. If you want to
178     attach any screenshots or example alignment files that demonstrate
179     the problem then you can drag them to the Create Issue dialog in
180     your browser, or use the <em>Attachment</em> browse facility to
181     locate them on your computer.
182   </p>
183
184   <p>
185     To help the Jalview team with diagnosing a particular issue, it is
186     really helpful if you can also add more detailed logs output whilst
187     re-creating the problem. To do this, open the Java Console, click
188     the <em>Clear</em> button and select TRACE in the <em>Log level</em>
189     drop down list. <br /> Whilst leaving the console open, perform the
190     task in Jalview that re-creates the problem. <br /> Then you can
191     copy the debug information in the Java Console by clicking on the <em>Copy
192       to clipboard</em> button and then paste that into the Description, or a
193     Comment of your issue.
194   </p>
195
196   <p>
197     For other queries or comments about Jalview, remember you can
198     contact the Jalview team using email via the
199     <a href="https://www.jalview.org/mailman/listinfo/jalview-discuss">Jalview
200       discussion list</a>, on Twitter <a
201       href="https://twitter.com/Jalview/">@Jalview</a>, or for technical
202     discussions, via the Jalview developer's chatroom at
203     <a href="https://gitter.im/jalview/developers">https://gitter.im/jalview/developers</a>.
204   </p>
205
206 </body>
207 </html>