All Downloads are FREE. Search and download functionalities are using the official Maven repository.

web-interface.assets.57e33c6c-58.11b9f72925818240e61d.js.map Maven / Gradle / Ivy

There is a newer version: 6.0.2
Show newest version
{"version":3,"sources":["webpack:///./src/components/sidecars/common/CommonSidecarStyles.css?4f39","webpack:///./src/components/sidecars/sidecars/SidecarStatusFileList.jsx","webpack:///./src/components/sidecars/sidecars/VerboseMessageModal.jsx","webpack:///./src/components/sidecars/sidecars/SidecarStatus.jsx","webpack:///./src/pages/SidecarStatusPage.jsx","webpack:///./src/components/sidecars/common/CommonSidecarStyles.css","webpack:///./src/logic/sidecar/SidecarStatusEnum.js"],"names":["options","locals","SidecarStatusFileList","header","time","now","Date","getTime","file","is_dir","name","path","type","key","className","_activityFormatter","mod_time","dateTime","format","size","_dirFormatter","id","headers","headerCellFormatter","this","_headerCellFormatter","rows","props","files","dataRowFormatter","_fileListFormatter","filterLabel","filterKeys","React","Component","PropTypes","array","isRequired","VerboseMessageModal","sourceModal","open","close","BootstrapModalWrapper","ref","c","bsSize","Header","closeButton","Title","collectorName","Body","collectorVerbose","Footer","onClick","hide","string","SidecarStatus","createReactClass","propTypes","sidecar","object","collectors","getInitialState","formatNodeDetails","details","metrics","commonStyles","deflist","topMargin","lodash","defaultTo","ip","operating_system","isNumber","cpu_idle","load_1","undefined","disks_75","length","join","formatCollectorStatus","status","collectorStatuses","statuses","forEach","statusMessage","statusBadge","statusClass","verboseButton","collector","find","collector_id","SidecarStatusEnum","RUNNING","fixedWidth","FAILING","message","verbose_message","bsStyle","_onShowVerbose","STOPPED","push","verbose","setState","modal","render","logFileList","node_details","log_file_list","md","hidden","state","SidecarsActions","CombinedProvider","get","CollectorsActions","SidecarStatusPage","getSidecar","params","sidecarId","then","error","history","Routes","SYSTEM","SIDECARS","OVERVIEW","all","response","reloadSidecar","reloadCollectors","interval","setInterval","clearInterval","title","node_name","DocumentationLink","page","DocsHelper","PAGES","COLLECTOR_STATUS","text","to","ADMINISTRATION","CONFIGURATION","withParams","___CSS_LOADER_EXPORT___","module","i","UNKNOWN","properties","0","1","2","3","isValidStatusCode","statusCode","Object","keys","includes","String","toStatusCode","stringStatus","lowerCase","toString","toNumber"],"mappings":"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","file":"57e33c6c-58.11b9f72925818240e61d.js","sourcesContent":["import api from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n            import content from \"!!../../../../node_modules/css-loader/dist/cjs.js??ref--10-1!./CommonSidecarStyles.css\";\n\nvar options = {};\n\noptions.insert = \"head\";\noptions.singleton = false;\n\nvar update = api(content, options);\n\n\n\nexport default content.locals || {};","/*\n * Copyright (C) 2020 Graylog, Inc.\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the Server Side Public License, version 1,\n * as published by MongoDB, Inc.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * Server Side Public License for more details.\n *\n * You should have received a copy of the Server Side Public License\n * along with this program. If not, see\n * .\n */\nimport PropTypes from 'prop-types';\nimport React from 'react';\n\nimport { DataTable, Timestamp, Icon } from 'components/common';\n\nclass SidecarStatusFileList extends React.Component {\n  static propTypes = {\n    files: PropTypes.array.isRequired,\n  };\n\n  _headerCellFormatter = (header) => {\n    return {header};\n  };\n\n  _activityFormatter = (time) => {\n    const now = new Date().getTime();\n    const modDate = new Date(time).getTime();\n\n    if (modDate > (now - 60000)) {\n      return ('info');\n    }\n\n    return ('');\n  };\n\n  _dirFormatter = (file) => {\n    if (file.is_dir) {\n      return (  {file.path});\n    }\n\n    return (  {file.path});\n  };\n\n  _fileListFormatter = (file) => {\n    const format = 'YYYY-MM-DD HH:mm:ss';\n\n    return (\n      \n        \n        {file.size}\n        {this._dirFormatter(file)}\n      \n    );\n  };\n\n  render() {\n    const filterKeys = [];\n    const headers = ['Modified', 'Size', 'Path'];\n\n    return (\n      
\n \n
\n );\n }\n}\n\nexport default SidecarStatusFileList;\n","/*\n * Copyright (C) 2020 Graylog, Inc.\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the Server Side Public License, version 1,\n * as published by MongoDB, Inc.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * Server Side Public License for more details.\n *\n * You should have received a copy of the Server Side Public License\n * along with this program. If not, see\n * .\n */\nimport PropTypes from 'prop-types';\nimport React from 'react';\n\nimport { Modal, Button } from 'components/graylog';\nimport BootstrapModalWrapper from 'components/bootstrap/BootstrapModalWrapper';\n\nclass VerboseMessageModal extends React.Component {\n static propTypes = {\n collectorName: PropTypes.string.isRequired,\n collectorVerbose: PropTypes.string.isRequired,\n };\n\n open = () => {\n this.sourceModal.open();\n };\n\n hide = () => {\n this.sourceModal.close();\n };\n\n render() {\n return (\n { this.sourceModal = c; }} bsSize=\"large\">\n \n Error Details for {this.props.collectorName}\n \n \n
\n
\n              {this.props.collectorVerbose || ''}\n            
\n
\n
\n \n \n \n
\n );\n }\n}\n\nexport default VerboseMessageModal;\n","/*\n * Copyright (C) 2020 Graylog, Inc.\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the Server Side Public License, version 1,\n * as published by MongoDB, Inc.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * Server Side Public License for more details.\n *\n * You should have received a copy of the Server Side Public License\n * along with this program. If not, see\n * .\n */\nimport React from 'react';\nimport createReactClass from 'create-react-class';\nimport PropTypes from 'prop-types';\nimport lodash from 'lodash';\n\nimport { Col, Row, Button } from 'components/graylog';\nimport { Icon } from 'components/common';\nimport SidecarStatusEnum from 'logic/sidecar/SidecarStatusEnum';\nimport commonStyles from 'components/sidecars/common/CommonSidecarStyles.css';\n\nimport SidecarStatusFileList from './SidecarStatusFileList';\nimport VerboseMessageModal from './VerboseMessageModal';\n\nconst SidecarStatus = createReactClass({\n propTypes: {\n sidecar: PropTypes.object.isRequired,\n collectors: PropTypes.array.isRequired,\n },\n\n getInitialState() {\n return { collectorName: '', collectorVerbose: '' };\n },\n\n formatNodeDetails(details) {\n if (!details) {\n return

Node details are currently unavailable. Please wait a moment and ensure the sidecar is correctly connected to the server.

;\n }\n\n const metrics = details.metrics || {};\n\n return (\n
\n
IP Address
\n
{lodash.defaultTo(details.ip, 'Not available')}
\n
Operating System
\n
{lodash.defaultTo(details.operating_system, 'Not available')}
\n
CPU Idle
\n
{lodash.isNumber(metrics.cpu_idle) ? `${metrics.cpu_idle}%` : 'Not available'}
\n
Load
\n
{lodash.defaultTo(metrics.load_1, 'Not available')}
\n
Volumes > 75% full
\n {metrics.disks_75 === undefined\n ?
Not available
\n :
{metrics.disks_75.length > 0 ? metrics.disks_75.join(', ') : 'None'}
}\n
\n );\n },\n\n formatCollectorStatus(details, collectors) {\n if (!details || !collectors) {\n return

Collectors status are currently unavailable. Please wait a moment and ensure the sidecar is correctly connected to the server.

;\n }\n\n if (!details.status) {\n return

Did not receive collectors status, set the option send_status: true in the sidecar configuration to see this information.

;\n }\n\n const collectorStatuses = details.status.collectors;\n\n if (collectorStatuses.length === 0) {\n return

There are no collectors configured in this sidecar.

;\n }\n\n const statuses = [];\n\n collectorStatuses.forEach((status) => {\n const collector = collectors.find((c) => c.id === status.collector_id);\n\n let statusMessage;\n let statusBadge;\n let statusClass;\n let verboseButton;\n\n switch (status.status) {\n case SidecarStatusEnum.RUNNING:\n statusMessage = 'Collector is running.';\n statusClass = 'text-success';\n statusBadge = ;\n break;\n case SidecarStatusEnum.FAILING:\n statusMessage = status.message;\n statusClass = 'text-danger';\n statusBadge = ;\n\n if (status.verbose_message) {\n verboseButton = (\n \n );\n }\n\n break;\n case SidecarStatusEnum.STOPPED:\n statusMessage = status.message;\n statusClass = 'text-danger';\n statusBadge = ;\n break;\n default:\n statusMessage = 'Collector status is currently unknown.';\n statusClass = 'text-info';\n statusBadge = ;\n }\n\n if (collector) {\n statuses.push(\n
{collector.name}
,\n
{statusBadge} {statusMessage} {verboseButton}
,\n );\n }\n });\n\n return (\n
\n {statuses}\n
\n );\n },\n\n _onShowVerbose(name, verbose) {\n this.setState({ collectorName: name, collectorVerbose: verbose });\n this.modal.open();\n },\n\n render() {\n const { sidecar } = this.props;\n\n const logFileList = sidecar.node_details.log_file_list || [];\n\n return (\n
\n \n \n

Node details

\n {this.formatNodeDetails(sidecar.node_details)}\n \n
\n \n \n

Collectors status

\n
\n {this.formatCollectorStatus(sidecar.node_details, this.props.collectors)}\n
\n \n
\n \n { this.modal = c; }}\n collectorName={this.state.collectorName}\n collectorVerbose={this.state.collectorVerbose} />\n
\n );\n },\n\n});\n\nexport default SidecarStatus;\n","/*\n * Copyright (C) 2020 Graylog, Inc.\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the Server Side Public License, version 1,\n * as published by MongoDB, Inc.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * Server Side Public License for more details.\n *\n * You should have received a copy of the Server Side Public License\n * along with this program. If not, see\n * .\n */\nimport PropTypes from 'prop-types';\nimport React from 'react';\n\nimport { LinkContainer } from 'components/graylog/router';\nimport { ButtonToolbar, Button } from 'components/graylog';\nimport { DocumentTitle, PageHeader, Spinner } from 'components/common';\nimport DocsHelper from 'util/DocsHelper';\nimport DocumentationLink from 'components/support/DocumentationLink';\nimport CombinedProvider from 'injection/CombinedProvider';\nimport Routes from 'routing/Routes';\nimport history from 'util/History';\nimport SidecarStatus from 'components/sidecars/sidecars/SidecarStatus';\nimport withParams from 'routing/withParams';\n\nconst { SidecarsActions } = CombinedProvider.get('Sidecars');\nconst { CollectorsActions } = CombinedProvider.get('Collectors');\n\nclass SidecarStatusPage extends React.Component {\n static propTypes = {\n params: PropTypes.object.isRequired,\n };\n\n state = {\n sidecar: undefined,\n };\n\n componentDidMount() {\n this.reloadSidecar();\n this.reloadCollectors();\n this.interval = setInterval(this.reloadSidecar, 5000);\n }\n\n componentWillUnmount() {\n if (this.interval) {\n clearInterval(this.interval);\n }\n }\n\n reloadSidecar = () => {\n SidecarsActions.getSidecar(this.props.params.sidecarId).then(\n (sidecar) => this.setState({ sidecar }),\n (error) => {\n if (error.status === 404) {\n history.push(Routes.SYSTEM.SIDECARS.OVERVIEW);\n }\n },\n );\n };\n\n reloadCollectors = () => {\n CollectorsActions.all().then((response) => this.setState({ collectors: response.collectors }));\n };\n\n render() {\n const { sidecar } = this.state;\n const { collectors } = this.state;\n const isLoading = !sidecar || !collectors;\n\n if (isLoading) {\n return ;\n }\n\n return (\n \n \n Sidecar {sidecar.node_name} status}>\n \n A status overview of the Graylog Sidecar.\n \n\n \n Read more about sidecars and how to set them up in the\n {' '}.\n \n\n \n \n \n \n \n \n \n \n \n \n \n \n\n \n \n \n );\n }\n}\n\nexport default withParams(SidecarStatusPage);\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/cssWithMappingToString.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".PCbPKPvnKVA8oUwYA4M9j {\\n margin-top: 10px;\\n}\\n\\n.PCbPKPvnKVA8oUwYA4M9j dt {\\n float: left;\\n clear: left;\\n}\\n\\n.PCbPKPvnKVA8oUwYA4M9j dd {\\n margin-left: 160px;\\n}\\n\\n._3xaZ935tc3aOzEycmIw18T {\\n margin-top: 10px;\\n}\\n\\n._2QB1w0qTpRdQWQ7TDkb1UC {\\n opacity: 0.5;\\n z-index: 20;\\n}\\n\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/sidecars/common/CommonSidecarStyles.css\"],\"names\":[],\"mappings\":\"AAAA;IACI,gBAAgB;AACpB;;AAEA;IACI,WAAW;IACX,WAAW;AACf;;AAEA;IACI,kBAAkB;AACtB;;AAEA;IACI,gBAAgB;AACpB;;AAEA;IACI,YAAY;IACZ,WAAW;AACf\",\"sourcesContent\":[\":local(.deflist) {\\n margin-top: 10px;\\n}\\n\\n:local(.deflist) dt {\\n float: left;\\n clear: left;\\n}\\n\\n:local(.deflist) dd {\\n margin-left: 160px;\\n}\\n\\n:local(.topMargin) {\\n margin-top: 10px;\\n}\\n\\n:local(.greyedOut) {\\n opacity: 0.5;\\n z-index: 20;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\n___CSS_LOADER_EXPORT___.locals = {\n\t\"deflist\": \"PCbPKPvnKVA8oUwYA4M9j\",\n\t\"topMargin\": \"_3xaZ935tc3aOzEycmIw18T\",\n\t\"greyedOut\": \"_2QB1w0qTpRdQWQ7TDkb1UC\"\n};\nexport default ___CSS_LOADER_EXPORT___;\n","/*\n * Copyright (C) 2020 Graylog, Inc.\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the Server Side Public License, version 1,\n * as published by MongoDB, Inc.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * Server Side Public License for more details.\n *\n * You should have received a copy of the Server Side Public License\n * along with this program. If not, see\n * .\n */\nimport lodash from 'lodash';\n\nconst SidecarStatusEnum = {\n RUNNING: 0,\n UNKNOWN: 1,\n FAILING: 2,\n STOPPED: 3,\n properties: {\n 0: { name: 'running' },\n 1: { name: 'unknown' },\n 2: { name: 'failing' },\n 3: { name: 'stopped' },\n },\n\n isValidStatusCode(statusCode) {\n return Object.keys(this.properties).includes(String(statusCode));\n },\n\n toStatusCode(stringStatus) {\n const status = lodash.lowerCase(stringStatus);\n\n if (status === this.properties[this.RUNNING].name) {\n return this.RUNNING;\n }\n\n if (status === this.properties[this.FAILING].name) {\n return this.FAILING;\n }\n\n if (status === this.properties[this.STOPPED].name) {\n return this.STOPPED;\n }\n\n return this.UNKNOWN;\n },\n\n toString(statusCode) {\n switch (lodash.toNumber(statusCode)) {\n case this.RUNNING:\n return 'running';\n case this.FAILING:\n return 'failing';\n case this.STOPPED:\n return 'stopped';\n default:\n return 'unknown';\n }\n },\n};\n\nexport default SidecarStatusEnum;\n"],"sourceRoot":""}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy