Skip to content

Commit

Permalink
Update README.md
Browse files Browse the repository at this point in the history
  • Loading branch information
Daniel committed Apr 17, 2017
1 parent a37ef76 commit 60acb13
Show file tree
Hide file tree
Showing 2 changed files with 86 additions and 3 deletions.
83 changes: 83 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,3 +10,86 @@ Install using npm or yarn
$ npm install dcos-logging-node
$ yarn add dcos-logging-node
```

# Usage

```javascript

const dcosLogging = require('../lib/index')(
{
dcosHost: 'DCOS_HOST',
dcosProtocol: 'https'
},{
headers: {
'Authorization': 'token=DCOS_ACCESS_TOKEN'
/*
You can get the access Token in the DCOS cli Using
$ dcos config show core.dcos_acs_token
*/
}
});

dcosLogging.range.get(null, 'text/plain', false, {skip_prev: 200, limit: 3})
.then(logs => console.log(logs))
.catch(err => console.error(err));
```

## Format


In the methods you will neet to discribe the Accept Header.
The API request header can be any the following:

- `text/plain`, `text/html`, `*/*` request logs in text format, ending with `\n`.
- `application/json` request logs in JSON format.
- `text/event-stream` request logs in Server-Sent-Events format.

# Stream

You can get a readble Stream object from any end point in the Logging API

```javascript

dcosLogging.range.get(null, 'text/event-stream', true)
.then((stream) => {
// Forces the stream to receive a String instead of a Buffer object
stream.setEncoding('utf-8');
// Event that receives data from DCOS
stream.on('data', (chunk) => {
// Printing the chunk received from the stream
console.log(chunk);
});

// Last chunk, it runs when the connection is closed
stream.on('end', () => {
// Here you do what you need when it ends...
});

// If for some reason we receive an error while connected, we can handle it here
stream.on('errror', (err) => {
// Error handling...
})
}).catch((err) => console.log(err));

```

## Methods

> Note: If the AcceptHeader is `text/event-stream'` you will need to set the `RequestStream` param to false
### Range


- get(agentId, AcceptHeader, RequestStream, parameters)
- download(agentId, AcceptHeader, requestStream, parameters)
- framework(agentId,frameworkId, executorId, containerId, AcceptHeader, requestStream, parameters)
- frameworkDownload(agentId, frameworkId, executorId, containerId, AcceptHeader, requestStream , parameters)

### Stream

- get(agentId, AcceptHeader, requestStream, parameters)
- framework(agentId, frameworkId, executorId, containerId, AcceptHeader, requestStream)

### Fields

- get(agentId, field, AcceptHeader, requestStream, parameters)
6 changes: 3 additions & 3 deletions examples/example.js
Original file line number Diff line number Diff line change
Expand Up @@ -17,18 +17,18 @@ dcosLogging.range.get(null, 'text/event-stream', true)
// Forces the stream to receive a String instead of a Buffer object
stream.setEncoding('utf-8');
// Event that receives data from DCOS
stream.on('data',(chunk) => {
stream.on('data', (chunk) => {
// Printing the chunk received from the stream
console.log(chunk);
});

// Last chunk, it runs when the connection is closed
stream.on('end',() => {
stream.on('end', () => {
// Here you do what you need when it ends...
});

// If for some reason we receive an error while connected, we can handle it here
stream.on('errror',(err) => {
stream.on('errror', (err) => {
// Error handling...
})
}).catch((err) => console.log(err));
Expand Down

0 comments on commit 60acb13

Please sign in to comment.