Working with JSON Studio

To login to JSON Studio open a browser page using the url:

https://<host where the studio is installed>:8443

or the following which will redirect to the SSL port:

http://<host where the studio is installed>:8080

(all these examples assume that you selected the defaults 8080 and 8443 when installing the Studio).

_images/login.jpg

You can login to the Studio as long as you provide at least the host and the database name in the login page. The host is the host where the database is installed and to which you want to connect. The database is the database you want to use within the instance. If the database is not using the default port of 27017 you should also enter the port number. If the database is configured with authentication, enter also your user name and password. Note that these are the user name and password to the database; JSON Studio does not maintain credentials and does not know about user names or passwords. It merely logs you into a database session using the credentials you provide. It does not store or reuse these credentials so there are no security concerns regarding credentials.

You must specify the database to connect to - that is mandatory. In addition, you can specify a Studio DB (and this is the recommended best practice). JSON Studio saves some data into a MongoDB database. For example, as you are building queries or graphs or aggregation pipelines, you may want to save these for future use. These are saved into various collections in the database (all of which have an lmrm__ prefix so that you can conveniently identify them). If you do not specify a database name in the Studio DB field in the login screen then the lmrm__ collections will be created in your main database (the one you are querying on). Therefore, it is a best-practice to have a separate database used for JSON Studio’s operation separately from the database where your data resides as shown below. If you enter only a database name in the Studio DB field then the Studio assumes that the Studio DB is a database that lives in the same host as your main database.

_images/studiodb.jpg

If you want to use a database on another instance as your Studio DB then use standard MongoDB URI syntax in the Studio DB field:

mongodb://<user>:<pwd>@<host>:<port>/<db>

All fields are mandatory to use the above syntax. If your Studio db is running on a server with authentication disabled use none:none for the username and password.

Note that SSL and Kerberos are used for both the main database and the Studio DB so if you use SSL for connecting to your database you must also use SSL for the metadata database.

See Connecting to MongoDB over SSL for information regarding additional login options.

See Connecting to a replica set for information regarding connecting to multiple hosts that belong to a replica set.

Once you are logged into the Studio you will be in the Finder application (see Working with the Finder) as shown below. Use links and icons to navigate between the different applications rather than using the browser’s back, refresh and forward buttons (refreshes are not using in JSON Studio since all screen refreshes use AJAX partial refresh; whole pages need never be refreshed). For example, in the following image the black arrows mark ways to navigate to the Spreadsheet Bridge application (see Working with the Spreadsheet Bridge) and the green arrows mark ways to navigate to the Schema Analyzer application (see Working with the Schema Analyzer) :

_images/navigating.jpg

Each one of the Studio’s application has a control pane similar to that shown in the following image:

_images/control.jpg

Starting from the left are the following controls:

  • The ping server button allows you to verify that the Studio is still connected to the database. Use this if you are unsure whether connectivity exists (e.g. to check if the Studio is not responding because, for example, someone brought down the database server).
  • The cancel-long-operation button allows you to interrupt and stop a long running operation if you change your mind and don’t want to wait for it to complete.
  • The connection string shows you where you are connected to. In the example above the user ron1 is connected to the database called tweets running on the same machine that the Studio is running on (127.0.0.1 is localhost) and any Studio metadata saved will go to the database called lmrm.
  • On the right are navigation links to the Aggregation Builder, Spreadsheet Bridge, Schema Analyzer applications.
  • Use the Preferences link to open the Preferences pane (see Preferences for attributes you can control per application)
  • Logout from the Studio using the Logout link. If you shut your browser window without logging out first, your Studio session will be reclaimed after 30 minutes. However, during that time the Studio does not know you will no longer use that session and if you are licensed for a certain number of concurrent users you will be consuming one such license. Therefore, it is better to logout when you are done.
  • The help (question mark) icon opens the documentation pages.

JSON Studio applications share a single context and this allows cross-application navigation that preserves full context. For example, you might be querying a collection in the Finder and then navigate to the Spreadsheet Bridge to export the data to Excel – all the time preserving the query you constructed in the Finder using facets.

As a result of this shared context, it is not recommended to have more than one browser tab or window for JSON Studio. Nothing bad will happen if you do open more than one but the results may be confusing. For example, if you have two tabs open on the same application and there is a cursor open, the location of the cursor is shared. In this case, if you click next in one, it affects the other as well. Then, if you progress the cursor in another tab you may be surprised that you “jumped ahead” more than you expected.

While nothing bad will happen if you do have multiple tabs/windows on the same application, the application warns you with the following error if it thinks that you do have more than one open; if indeed you have multiple such tabs open consider closing them and in any case you can dismiss the warning:

_images/multiple_error.jpg

This error will be displayed only once per application and will not recur during that application session once you dismiss it. Note that this error will also happen if you refresh the page since the server has no way to know that it is the same page versus a new tab/window.

Validating JSON

Each of the main applications (Finder, Aggregation Builder, Spreadsheet Bridge, Schema Analyzer, Run-time Viewer and Visualizer) has a built-in JSON validator. Use it when you need to edit JSON (e.g. to add code into Aggregation Builder stages or into Finder conditions). Open the validator using the Validate link at the top-right of each application (next to the Preferences link) or by clicking ctrl-0. This opens an input area where you can type or paste JSON text to be validated.

Note: Validation follows MongoDB conventions and is more relaxed than formal JSON validation. For example, the following text will be flagged as valid (because MongoDB will accept it) while it is not valid JSON:

{
   a: 123
}

Table Of Contents

Previous topic

Installing JSON Studio

Next topic

Working with the Finder

Copyright © 2013-2016 jSonar, Inc
MongoDB is a registered trademark of MongoDB Inc. Excel is a trademark of Microsoft Inc. JSON Studio is a registered trademark of jSonar Inc. All trademarks and service marks are the property of their respective owners.