Getting started
MASV Agent (formerly MASV Transfer Agent) is a cross-platform service that manages file transfers to and from MASV. It functions primarily as a CLI tool, but uses a local REST API server under the hood that can be called directly.
It supports the upload and download of multiple packages simultaneously, while abstracting file system interactions. The MASV Agent is used to transfer terabytes of data every day, reliably and quickly. It is also stateful—it stores metadata about transfers and user sessions in order to carry out its responsibilities and survive interruptions and shutdowns.
Installation
With a native binary
The recommended way to run MASV Agent is to install it natively. To do so, please follow our Native setup guide for Windows, Mac, or Linux.
With Docker
MASV Agent is also provided in a Docker container image. This allows for ease of use between many different operating systems and architectures. See our Docker setup guide.
Running MASV Agent
To start the MASV Agent, you must first start the local server via:
masv server start
Parameters
You can configure the server using these command-line flags:
| Flags | Type | Default | Description |
|---|---|---|---|
api-key |
String | N/A | MASV API key used for authentication with the MASV API |
auto-finalize |
Boolean | true | Automatically finalizes all uploads when they reach 100%% progress |
auto-resume |
Boolean | true | If specified, automatically resumes transfers as soon as the server starts |
chunk-size |
String | 100MB |
Target chunk size for uploads and downloads, formatted as {number}{unit} |
config-dir |
String | $HOME/.masvsrv |
Storage location for configuration files, including the database file |
listen |
String | http://localhost:8080 |
Listen address. If the port is not specified or 0, the port will be system-assigned. |
log-format |
String | [%lvl%] %time%: %msg%\n |
Easy Logrus log format |
log-level |
String | debug |
Log level: debug, info, warning, error |
log-out |
String | stdout |
Where the logs are written: stdout, stderr, {filename} |
log-timestamp-format |
String | 15:04:05 |
Easy Logrus timestamp format |
memory-cache |
Boolean | true | If specified, RAM is used to boost transfer performance. |
transfer-cleanup-days |
Integer | N/A | If specified, transfers older than this number of days will be automatically deleted from local history (minimum 1) |
version |
null | N/A | Shows the current version/build number, as well as any available updates |
After the server is up, you can start using the rest of MASV Agent's commands.
Help and more info
You can see a list of available commands and flags with:
masv -h
You can check which version of MASV Agent you have by running:
masv version
You can gracefully stop the local server by running:
masv server shutdown
View log output for the MASV Agent
The MASV Agent log lets you review activities and troubleshoot. If working with MASV Support, you can copy and paste the log output to a text file.
Docker
- Use
docker container lsto obtain the container ID. - Query the Docker container logs:
docker logs <container_id>.
Linux
- In your Terminal, enter
journalctl -u masv-agentto view the log output from systemd.
macOS
- On your macOS device, navigate to
HOME/masv-agent/main.log.
Windows
- On your Microsoft Windows device, open the Event Viewer, expand Windows Logs > Application, and filter Source for masv-agent entries.
Next steps
- Downloads: Start, monitor, and manage downloads with the MASV Agent.
- Uploads: Start, monitor, and manage uploads with the MASV Agent.
- Storage Gateway: Set up secure remote access to your physical storage.