first stab at getting nice json output in the logs
This commit is contained in:
parent
639ede7b77
commit
b126871a95
|
@ -3929,6 +3929,14 @@
|
||||||
"bser": "^2.0.0"
|
"bser": "^2.0.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"fbemitter": {
|
||||||
|
"version": "2.1.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/fbemitter/-/fbemitter-2.1.1.tgz",
|
||||||
|
"integrity": "sha1-Uj4U/a9SSIBbsC9i78M75wP1GGU=",
|
||||||
|
"requires": {
|
||||||
|
"fbjs": "^0.8.4"
|
||||||
|
}
|
||||||
|
},
|
||||||
"fbjs": {
|
"fbjs": {
|
||||||
"version": "0.8.17",
|
"version": "0.8.17",
|
||||||
"resolved": "https://registry.npmjs.org/fbjs/-/fbjs-0.8.17.tgz",
|
"resolved": "https://registry.npmjs.org/fbjs/-/fbjs-0.8.17.tgz",
|
||||||
|
@ -4072,6 +4080,15 @@
|
||||||
"resolved": "https://registry.npmjs.org/flatten/-/flatten-1.0.2.tgz",
|
"resolved": "https://registry.npmjs.org/flatten/-/flatten-1.0.2.tgz",
|
||||||
"integrity": "sha1-2uRqnXj74lKSJYzB54CkHZXAN4I="
|
"integrity": "sha1-2uRqnXj74lKSJYzB54CkHZXAN4I="
|
||||||
},
|
},
|
||||||
|
"flux": {
|
||||||
|
"version": "3.1.3",
|
||||||
|
"resolved": "https://registry.npmjs.org/flux/-/flux-3.1.3.tgz",
|
||||||
|
"integrity": "sha1-0jvtUVp5oi2TOrU6tK2hnQWy8Io=",
|
||||||
|
"requires": {
|
||||||
|
"fbemitter": "^2.0.0",
|
||||||
|
"fbjs": "^0.8.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
"follow-redirects": {
|
"follow-redirects": {
|
||||||
"version": "1.5.1",
|
"version": "1.5.1",
|
||||||
"resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.5.1.tgz",
|
"resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.5.1.tgz",
|
||||||
|
@ -9691,6 +9708,30 @@
|
||||||
"react-base16-styling": "^0.5.1"
|
"react-base16-styling": "^0.5.1"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"react-json-view": {
|
||||||
|
"version": "1.19.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/react-json-view/-/react-json-view-1.19.1.tgz",
|
||||||
|
"integrity": "sha512-u5e0XDLIs9Rj43vWkKvwL8G3JzvXSl6etuS5G42a8klMohZuYFQzSN6ri+/GiBptDqlrXPTdExJVU7x9rrlXhg==",
|
||||||
|
"requires": {
|
||||||
|
"flux": "^3.1.3",
|
||||||
|
"react-base16-styling": "^0.6.0",
|
||||||
|
"react-lifecycles-compat": "^3.0.4",
|
||||||
|
"react-textarea-autosize": "^6.1.0"
|
||||||
|
},
|
||||||
|
"dependencies": {
|
||||||
|
"react-base16-styling": {
|
||||||
|
"version": "0.6.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/react-base16-styling/-/react-base16-styling-0.6.0.tgz",
|
||||||
|
"integrity": "sha1-7yFW1mz0E5aVyKFniGy2nqZgeSw=",
|
||||||
|
"requires": {
|
||||||
|
"base16": "^1.0.0",
|
||||||
|
"lodash.curry": "^4.0.1",
|
||||||
|
"lodash.flow": "^3.3.0",
|
||||||
|
"pure-color": "^1.2.0"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
"react-lifecycles-compat": {
|
"react-lifecycles-compat": {
|
||||||
"version": "3.0.4",
|
"version": "3.0.4",
|
||||||
"resolved": "https://registry.npmjs.org/react-lifecycles-compat/-/react-lifecycles-compat-3.0.4.tgz",
|
"resolved": "https://registry.npmjs.org/react-lifecycles-compat/-/react-lifecycles-compat-3.0.4.tgz",
|
||||||
|
@ -9817,6 +9858,14 @@
|
||||||
"prop-types": "^15.5.6"
|
"prop-types": "^15.5.6"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"react-textarea-autosize": {
|
||||||
|
"version": "6.1.0",
|
||||||
|
"resolved": "http://registry.npmjs.org/react-textarea-autosize/-/react-textarea-autosize-6.1.0.tgz",
|
||||||
|
"integrity": "sha512-F6bI1dgib6fSvG8so1HuArPUv+iVEfPliuLWusLF+gAKz0FbB4jLrWUrTAeq1afnPT2c9toEZYUdz/y1uKMy4A==",
|
||||||
|
"requires": {
|
||||||
|
"prop-types": "^15.6.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
"react-transition-group": {
|
"react-transition-group": {
|
||||||
"version": "2.4.0",
|
"version": "2.4.0",
|
||||||
"resolved": "https://registry.npmjs.org/react-transition-group/-/react-transition-group-2.4.0.tgz",
|
"resolved": "https://registry.npmjs.org/react-transition-group/-/react-transition-group-2.4.0.tgz",
|
||||||
|
|
|
@ -57,6 +57,7 @@
|
||||||
"react-dom": "^16.4.1",
|
"react-dom": "^16.4.1",
|
||||||
"react-fontawesome": "^1.6.1",
|
"react-fontawesome": "^1.6.1",
|
||||||
"react-json-tree": "^0.11.0",
|
"react-json-tree": "^0.11.0",
|
||||||
|
"react-json-view": "^1.19.1",
|
||||||
"react-redux": "^5.0.7",
|
"react-redux": "^5.0.7",
|
||||||
"react-router-dom": "^4.3.1",
|
"react-router-dom": "^4.3.1",
|
||||||
"react-scroll-to-component": "^1.0.2",
|
"react-scroll-to-component": "^1.0.2",
|
||||||
|
|
|
@ -117,7 +117,9 @@ export const commands = {
|
||||||
{
|
{
|
||||||
timestamp: new Date().getTime(),
|
timestamp: new Date().getTime(),
|
||||||
name: EMBARK_PROCESS_NAME,
|
name: EMBARK_PROCESS_NAME,
|
||||||
msg: `console> ${payload.command}<br>${ansiToHtml(command.result)}`
|
msg: `console> ${payload.command}<br>${ansiToHtml(command.result)}`,
|
||||||
|
command: `console> ${payload.command}<br>`,
|
||||||
|
result: command.result
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
});
|
});
|
||||||
|
|
|
@ -5,6 +5,7 @@ import Convert from 'ansi-to-html';
|
||||||
import { Col, Row, Card, CardBody, CardFooter, TabContent, TabPane, Nav, NavItem, NavLink } from 'reactstrap';
|
import { Col, Row, Card, CardBody, CardFooter, TabContent, TabPane, Nav, NavItem, NavLink } from 'reactstrap';
|
||||||
import classnames from 'classnames';
|
import classnames from 'classnames';
|
||||||
import {AsyncTypeahead} from 'react-bootstrap-typeahead'
|
import {AsyncTypeahead} from 'react-bootstrap-typeahead'
|
||||||
|
import ReactJson from 'react-json-view';
|
||||||
|
|
||||||
import Logs from "./Logs";
|
import Logs from "./Logs";
|
||||||
import "./Console.css";
|
import "./Console.css";
|
||||||
|
@ -67,8 +68,17 @@ class Console extends Component {
|
||||||
{processLogs
|
{processLogs
|
||||||
.filter((item) => item.name === process.name)
|
.filter((item) => item.name === process.name)
|
||||||
.reverse()
|
.reverse()
|
||||||
.map((item, i) => <p key={i} className={item.logLevel}
|
.map((item, i) => {
|
||||||
dangerouslySetInnerHTML={{__html: convert.toHtml(item.msg)}}></p>)}
|
|
||||||
|
if (item.result && item.result[0] === "{") {
|
||||||
|
return(
|
||||||
|
<ReactJson src={JSON.parse(item.result)} theme="monokai" sortKeys={true} collapsed={1} />
|
||||||
|
)
|
||||||
|
}
|
||||||
|
<p key={i} className={item.logLevel} dangerouslySetInnerHTML={{__html: convert.toHtml(item.msg)}}></p>
|
||||||
|
|
||||||
|
})
|
||||||
|
}
|
||||||
</Logs>
|
</Logs>
|
||||||
</TabPane>
|
</TabPane>
|
||||||
))}
|
))}
|
||||||
|
|
Loading…
Reference in New Issue