...
- It enables you to change the Developer Settings without navigating away from your current page.
- It provides a visual reminder that VIVO is in Developer Mode. If a production instance were accidentally configured to run in Developer Mode, it would be easily noticed.
![No Developer Panel No Developer Panel](/download/thumbnails/55903399/Screen%20Shot%202014-01-27%20at%203.35.18%20PM.png?version=1&modificationDate=1398733070095&api=v2&effects=border-simple,shadow-kn)
![Developer Panel (closed) Developer Panel (closed)](/download/thumbnails/55903399/Screen%20Shot%202014-01-27%20at%201.44.45%20PM.png?version=1&modificationDate=1398733069968&api=v2&effects=border-simple,shadow-kn)
Image Added
Entering Developer Mode
developer.properties
file
...
The Developer Panel will immediately appear below the page header. You may click on the panel to open it and change the settings. The Developer Panel will continue to appear in every page (except for some "back-end" pages for editing the ontology).
The settings
When open, the developer panel looks like this:
Image Removed
The developer panel has two general settings, and three tabs of additional settings. The following tables show the meaning of each setting in the developer panel, and how to specify it in the developer.properties
file.
General settings
These appear at the top of the panel, regardless of which tab is selected.
In the panel | Enable developer mode |
---|
In the file | developer.enabled |
---|
Effect | Causes the developer panel to be displayed on each VIVO page. Enables all of the other developer settings. If this is false , other settings will retain their values, but will not take effect. |
---|
In the panel | Allow anonymous user to see and modify developer settings |
---|
In the file | developer.permitAnonymousControl |
---|
Effect | If true , any VIVO user may change the developer settings. If false , only a system administrator (or root) may change the settings. |
---|
The "General" tab
Image Added
Freemarker settings
In the panel | Defeat the template cache |
---|
In the file | developer.defeatFreemarkerCache |
---|
Effect | If true , each Freemarker template is loaded from disk each time it is used. If false , a template change may be on disk for up to one minute before it is loaded. |
---|
In the panel | Insert HTML comments and start and end of templates |
---|
In the file | developer.insertFreemarkerDelimiters |
---|
Effect | If true , you may view the HTML source for a VIVO page to see which Freemarker templates were used to create each portion of the page. For example: Code Block |
---|
| ...
<!-- FM_BEGIN view-search-default.ftl -->
<a href="/vivo/display/n2252" title="individual name">Oswald, Jeremiah</a>
<span class="display-title">Faculty Member</span>
<p class="snippet"></p><!-- FM_END view-search-default.ftl -->
... |
|
---|
SPARQL Query settings
In the panel | LOG each query |
---|
In the file | developer.loggingRDFService.enable |
---|
Effect | Write an entry to the log for each SPARQL query, assuming that INFO -level logging is enabled for the RDFServiceLogger . Each entry includes - The time spent executing the query
- The name of the method on
RDFService that received the query - The format of the result stream from
RDFService - The text of the query.
The remaining settings in this area can be used to restrict which queries are logged, or to include more information for each query. |
---|
In the panel | Add Show stack trace |
---|
In the file | developer.loggingRDFService.stackTrace |
---|
Effect | Each log entry will include a stack trace. The trace is abridged so it starts after the ApplicationFilterChain , omits any Jena classes, and ends at the RDFService . |
---|
...
In the panel | Restrict by calling stack |
---|
In the file | developer.loggingRDFService.stackRestriction |
---|
Effect | Set this to a regular expression. A query will be logged only if the abridged calling stack matches the regular expression, in whole or in part. |
---|
Page configuration settings
In the panel | Log the use of custom list view XML files. |
---|
In the file | developer.pageContents.logCustomListView |
---|
Effect | Write an entry to the log each time a property is displayed using a list view other than the default lists view. |
---|
In the panel | Log the use of custom short views in search, index and browse pages. |
---|
In the file | developer.pageContents.logCustomShortView |
---|
Effect | Write an entry to the log each time a search result is displayed using a short view other than the default view for that context. |
---|
Language support settings
In the panel | Defeat the cache of language property files |
---|
In the file | developer.i18n.defeatCache |
---|
Effect | If true , the language property files are re-loaded each time they are called for. If false , the language property files are loaded only once, when VIVO starts up. |
---|
In the panel | Log the retrieval of language strings |
---|
In the file | developer.i18n.logStringRequests. |
---|
Effect | Write an entry to the log each time a language-specific string is retrieved from one of the language property files. |
---|
...
Links
The developer panel "General" tab also contains several these links to special VIVO pages that may be helpful to developers.
Link text | Set log levels |
---|
URL | /admin/log4j.jsp |
---|
The page | Displays the logging levels of every Java class in VIVO, providing that it has an active Log . You must be logged in as a system administrator (or root) to use this page. Find the class you are interested in, set the logging level, then scroll to the bottom of the page to Submit changes to logging levels . |
---|
...
Link text | Show background threads |
---|
URL | /admin/showThreads |
---|
The page | Displays information about the active background threads. These threads may be rebuilding the search index, re-inferencing the knowledge base, or rebuilding the Class Cache. |
---|
The "Search" tab
Image Added
Search query settings
In the panel | Log searches |
---|
In the file | developer.searchEngine.enable |
---|
Effect | Write an entry to the log for each Search query, assuming that INFO -level logging is enabled for the SearchEngineLogger . Each entry includes - The time spent executing the query
- The search query, including the query text, start row, row limits, search fields, return fields, facet fields, and filters.
- The number of results returned.
The remaining settings in this area can be used to restrict which queries are logged, or to include more information for each query. |
---|
In the panel | Show stack trace |
---|
In the file | developer.searchEngine.addStackTrace |
---|
Effect | Each log entry will include a stack trace. The trace is abridged so it starts after the ApplicationFilterChain and ends at the SearchEngineWrapper . |
---|
In the panel | Show search results |
---|
In the file | developer.searchEngine.addResults |
---|
Effect | Each log entry will include the search records that were returned from the query, as well as any facet fields. |
---|
In the panel | Restrict by query string |
---|
In the file | developer.searchEngine.queryRestriction |
---|
Effect | Set this to a regular expression. A query will be logged only if the text of the query matches the regular expression, in whole or in part. |
---|
In the panel | Restrict by calling stack |
---|
In the file | developer.searchEngine.stackRestriction |
---|
Effect | Set this to a regular expression. A query will be logged only if the abridged calling stack matches the regular expression, in whole or in part. |
---|
Search indexing settings
In the panel | Log indexing |
---|
In the file | developer.searchIndex.enable |
---|
Effect | |
---|
In the panel | Show document contents |
---|
In the file | developer.searchIndex.showDocuments |
---|
Effect | |
---|
In the panel | Restrict by URI or name |
---|
In the file | developer.searchIndex.uriOrNameRestriction |
---|
Effect | |
---|
In the panel | Restrict by document contents |
---|
In the file | developer.searchIndex.documentRestriction |
---|
Effect | |
---|
In the panel | Log deletions |
---|
In the file | developer.searchDeletions.enable |
---|
Effect | |
---|
Links
Link text | Rebuild search index |
---|
URL | /SearchIndex |
---|
The page | Allows you to request a rebuild of the search index, and to monitor its progress. |
---|
The "Authorization" tab
Image Added
What if the developer panel doesn't appear?
...