问题描述

slc pm 启动的时候报错如下:

[root@iZuf61qpjpeuqc5mjo4kn8Z lixiang-scf-web]# slc pm
strong-remoting deprecated The built-in CORS middleware provided by REST adapter was deprecated. See https://docs.strongloop.com/display/public/LB/Security+considerations for more details. ../../../../app/node-v6.9.5-linux-x64/lib/node_modules/strongloop/node_modules/_strong-remoting@2.35.1@strong-remoting/lib/remote-objects.js:97:25
slc pm(4457) Unexpected end of JSON input [root@iZuf61qpjpeuqc5mjo4kn8Z strongloop]# slc pm --json-file-db
strong-remoting deprecated The built-in CORS middleware provided by REST adapter was deprecated. See https://docs.strongloop.com/display/public/LB/Security+considerations for more details. ../node-v6.9.5-linux-x64/lib/node_modules/strongloop/node_modules/_strong-remoting@2.35.1@strong-remoting/lib/remote-objects.js:97:25
events.js:160
throw er; // Unhandled 'error' event
^ Error: SQLITE_FULL: database or disk is full
at Error (native)
[root@iZuf61qpjpeuqc5mjo4kn8Z strongloop]#

定位问题:

node-v6.9.5-linux-x64/lib/node_modules/strongloop/node_modules/_strong-remoting@2.35.1@strong-remoting/lib/remote-objects.js

查看文件:remote-objects.js

设置显示行号:97行

 94 RemoteObjects.prototype.handler = function(name, options) {
95 var Adapter = this.adapter(name);
96 var adapter = new Adapter(this, options);
97 var handler = adapter.createHandler();
98
99 if (handler) {
100 // allow adapter reference from handler
101 handler.adapter = adapter;
102 }
103
104 return handler;
105 };

原因分析

  1. 在上一次系统部署后,包括后台+ 前台 在同一台服务器上,初步怀疑是strongloop出现异常

尝试卸载strongloop

使用命令npm uninstall -g strongloop 报错磁盘空间不足,发现问题后台异常日志将系统填满,

使用du -sh *查找磁盘空间写满目录,rm -rf *删除异常空间目录

  1. 重新启动新的错误
[root@iZuf61qpjpeuqc5mjo4kn8Z strongloop]# tailf nohup.out
events.js:160
throw er; // Unhandled 'error' event
^
SyntaxError: Unexpected end of JSON input
at Object.parse (native)
at parseAndLoad (/app/node-v6.9.5-linux-x64/lib/node_modules/strongloop/node_modules/_loopback-datasource-juggler@2.58.0@loopback-datasource-juggler/lib/connectors/memory.js:129:21)
at /app/node-v6.9.5-linux-x64/lib/node_modules/strongloop/node_modules/_loopback-datasource-juggler@2.58.0@loopback-datasource-juggler/lib/connectors/memory.js:115:9
at tryToString (fs.js:455:3)
at FSReqWrap.readFileAfterClose [as oncomplete] (fs.js:442:12)
# 文件内容:/app/node-v6.9.5-linux-x64/lib/node_modules/strongloop/node_modules/_loopback-datasource-juggler@2.58.0@loopback-datasource-juggler/lib/connectors/memory.js:115:9
105 Memory.prototype.loadFromFile = function(callback) {
106 var self = this;
107 var hasLocalStorage = typeof window !== 'undefined' && window.localStorage;
108 var localStorage = hasLocalStorage && this.settings.localStorage;
109
110 if (self.settings.file) {
111 fs.readFile(self.settings.file, {encoding: 'utf8', flag: 'r'}, function(err, data) {
112 if (err && err.code !== 'ENOENT') {
113 callback && callback(err);
114 } else {
115 parseAndLoad(data);
116 }

通过修改源码,找到对应的配置文件:

Memory.prototype.loadFromFile = function(callback) {
106 var self = this;
107 var hasLocalStorage = typeof window !== 'undefined' && window.localStorage;
108 var localStorage = hasLocalStorage && this.settings.localStorage;
109
110 if (self.settings.file) {
111 fs.readFile(self.settings.file, {encoding: 'utf8', flag: 'r'}, function(err, data) {
112 if (err && err.code !== 'ENOENT') {
113 callback && callback(err);
114 } else {
115 console.log(self.settings.file);
116 parseAndLoad(data);
117 }
118 });
119 } else if (localStorage) {
120 var data = window.localStorage.getItem(localStorage);
121 data = data || '{}';
122 parseAndLoad(data);
123 } else {
124 process.nextTick(callback);
125 }
126
127 function parseAndLoad(data) {
128 if (data) {
129 try {
130 console.log(data)
131 data = JSON.parse(data.toString());
132 } catch (e) {
133 return callback(e);
134 }

配置文件地址:/root/.strong-pm/里面的所有配置json

解决方案:

删除/root/.strong-pm/中的配置文件,启动后重新生成,通过命令配置心得环境变量

/root/.strong-pm/strong-pm.json

备份后删除即可。

重新配置环境变量slc ctl env-set svc xxx=xxx

参考

官网地址:http://strong-pm.io/

【运维技术】slc pm 启动不了,异常排除问题记录的更多相关文章

  1. 技术沙龙|京东云DevOps自动化运维技术实践

    自动化测试体系不完善.缺少自助式的持续交付平台.系统间耦合度高服务拆分难度大.成熟的DevOps工程师稀缺,缺少敏捷文化--这些都是DevOps 在落地过程中,或多或少会碰到的问题,DevOps发展任 ...

  2. 突破LVS瓶颈,LVS Cluster部署(OSPF + LVS) - lxcong的运维技术 - 开源中国社区

    突破LVS瓶颈,LVS Cluster部署(OSPF + LVS) - lxcong的运维技术 - 开源中国社区 突破LVS瓶颈,LVS Cluster部署(OSPF + LVS)

  3. 端口映射工具 redir/socat/xinetd - 运维技术 - 开源中国社区

    端口映射工具 redir/socat/xinetd - 运维技术 - 开源中国社区 端口映射工具 redir/socat/xinetd    10人收藏此文章, 我要收藏 发表于3天前(2013-08 ...

  4. 干货云集 WOT 2017全球架构与运维技术峰会揭密技术难点

    WOT,World Of Tech专注互联网IT技术领域,是一场不容错过的技术盛会!WOT 2017全球架构与运维技术峰会三大章节,15大技术专场,60+国内外一线互联网精英大咖站台,打造兼顾技术视野 ...

  5. 【运维技术】redis(一主两从三哨兵模式搭建)记录

    redis(一主两从三哨兵模式搭建)记录 目的: 让看看这篇文章的的人能够知道:软件架构.软件的安装.配置.基本运维的操作.高可用测试.也包含我自己,能够节省对应的时间. 软件架构: 生产环境使用三台 ...

  6. CNUTCon2017全球运维技术大会(持续更新中) - 斯达克学院 - 实战驱动的 IT 教育平台 - Powered By EduSoho

    CNUTCon2017全球运维技术大会(持续更新中) - 斯达克学院 - 实战驱动的 IT 教育平台 - Powered By EduSoho   https://new.stuq.org/cours ...

  7. 亲爱的,我是一条Linux运维技术学习路径呀。

    根据我的经验,人在年轻时,最头疼的一件事就是决定自己这一生要做什么.在这方面,我倒没有什么具体的建议:干什么都可以,但最好不要写小说,这是和我抢饭碗.总而言之,干什么都是好的:但要干出个样子来,这才是 ...

  8. 沙龙报名 | 京东云DevOps——自动化运维技术实践

    随着互联网技术的发展,越来越多企业开始认识DevOps重要性,在企业内部推进实施DevOps,期望获得更好的软件质量,缩短软件开发生命周期,提高服务稳定性.但在DevOps 的实施与落地的过程中,或多 ...

  9. Python自动化运维技术与最佳实现

    第一章 系统基础信息模块详解 系统基础信息采集模块最为监控模块的重要组成部分,能够帮助运维人员了解当前系统的健康程度,同时也是衡量业务的服务质量的依据,比如系统资源吃紧,会直接影响业务的质量以及用户的 ...

随机推荐

  1. 浅谈Nutch插件机制(含开发实例)

    plugin(插件)为nutch提供了一些功能强大的部件,举个例子,HtmlParser就是使用比较普遍的用来分析nutch抓取的html文件的插件. 为什么nutch要使用这样的plugin系统? ...

  2. 在 CSS 中使用特征查询

    原文地址:Using Feature Queries in CSS 原文作者:Jen Simmons 译文出自:掘金翻译计划 本文永久链接:github.com/xitu/gold-m… 译者:Che ...

  3. 如何理解精通PHP ?

    「精通 PHP」可以理解为以下三个: 精通「PHP 解析器 精通「PHP 语法.函数(这门语言) 精通「PHP 项目开发 1 精通「PHP 解析器」 可以从这里开始学习: PHP核心:骇客指南 :ht ...

  4. 《转载》struts旅程《1》

    struts简介 Struts是Apache软件基金会(ASF)赞助的一个开源项目.它最初是jakarta项目中的一个子项目,并在2004年3月成为ASF的顶级项目.它通过采用JavaServlet/ ...

  5. nutch 1.7导入Eclipse

    1.下载Nutch1.7的包 apache-nutch-1.7-src.zip,解压之后应该包括 bin,conf,src等目录 2.将解压之后的 apache-nutch-1.7 文件夹放到ecli ...

  6. TextureMerger1.6.6 一:Egret MovieClip的制作和使用

    本随笔记录TextureMerger来制作动画,并在Egret中使用. 参考官网教程:http://bbs.egret.com/forum.php?mod=viewthread&tid=918 ...

  7. System.Threading.Tasks.Task引起的IIS应用程序池崩溃

    问题现象 IIS应用程序池崩溃(Crash)的特征如下: 1. 从客户端看,浏览器一直处于连接状态,Web服务器无响应. 2. 从服务器端看(Windows Server 2008 + IIS 7.0 ...

  8. 从零打造在线网盘系统之Hibernate配置O/R映射

    欢迎浏览Java工程师SSH教程从零打造在线网盘系统系列教程,本系列教程将会使用SSH(Struts2+Spring+Hibernate)打造一个在线网盘系统,本系列教程是从零开始,所以会详细以及着重 ...

  9. jquery插件方式实现table查询功能

    1.写插件部分,如下: ;(function($){ $.fn.plugin = function(options){ var defaults = { //各种属性,各种参数 } var optio ...

  10. 170529、springMVC 的工作原理和机制

    工作原理上面的是springMVC的工作原理图: 1.客户端发出一个http请求给web服务器,web服务器对http请求进行解析,如果匹配DispatcherServlet的请求映射路径(在web. ...