以前解决过一次,是定义LC_ALL为指定编码。但这种思路不完全,因为机器各各不同,系统编码本身不一致(标准化之路漫长啊)

故而在其它一些系统的部署时,用上一次的方案,反而会有错误产生。

于是,按洪军找到的另一种方案,这次理想多了。

URL如下:

http://blog.csdn.net/hnhuangyiyang/article/details/50421738

这个帖子操作的是命令行,如果作API的话,要变换一下。

# ok
    def cmd_run(self, tgt, arg, expr_form='compound', fun='cmd.run'):
        r = requests.post(self.host, verify=False, cookies=self.cookies, data={'tgt': tgt,
                                                                               'client': 'local',
                                                                               'expr_form': expr_form,
                                                                               'fun': fun,
                                                                               'arg': arg})
        if r.status_code == 200:
            # print r.json()
            return r.json()
        else:
            raise Exception('Error from source %s' % r.text)

    # ok
    def cmd_script(self, tgt, arg, expr_form='compound', fun='cmd.script'):
        r = requests.post(self.host, verify=False, cookies=self.cookies, data={'tgt': tgt,
                                                                               'client': 'local',
                                                                               'expr_form': expr_form,
                                                                               'fun': fun,
                                                                               'arg': arg})
        if r.status_code == 200:
            # print r.json()
            return r.json()
        else:
            raise Exception('Error from source %s' % r.text)

调用:

args = [salt_cmd.strip(), server_type+' '+site_name+' '+app+' '+deploy_version+' '+action+' '+is_inc_tot+' '+server_env, 'runas='+op_name, 'env={"LC_ALL": ""}']

~~~~~~~~~~~~~~~~~~~~~~~~~~~~

命令行执行:

如:

salt '10.0.10.100' cmd.run  'locale' env='{"LC_ALL": ""}'    #增加参数env='{"LC_ALL": ""}'
编写state.sls:
locale:
  cmd.run:
    - name: locale
    - env:
      - LC_ALL: ""

以上即可解决执行cmdmod.py修改字符集的问题。

值得庆幸的是,https://github.com/saltstack/salt上目前最新版的salt 2015.8.3已经将这个问题解决了,新的cmdmod.py源码修改了。

用saltapi远程操作tomcat启停时,输出日志乱码再解决的更多相关文章

  1. resin后台输出中文乱码的解决的方法!

    近期从tomcat移植到resin,发现这东西不错啊! 仅仅是后台输出时有时候中文会乱码. 如今找到resin后台输出中文乱码的解决的方法: 编辑conf/resin.con文件: <!--ja ...

  2. resin后台输出中文乱码的解决办法!

    resin后台输出中文乱码的解决办法! 学习了:https://blog.csdn.net/kobeguang/article/details/34116429 编辑conf/resin.con文件: ...

  3. tomcat的日志不输出日志信息的解决方法

    1.下载日志jar包,例如:commons-logging-1.1.1.jar.放在tomcat的bin目录下,或者是自己项目的lib包里. 2.修改tomcat的bin目录下面的catalina.b ...

  4. tomcat 下catalina.out 日志乱码问题处理

    问题: 项目部署到Linux服务器之后,控制台 catalina.out 文件输出的中文为乱码: 解决办法: 方法一:修改tomcat下的模板编码 bin/catalina.sh 文件添加如下配置:J ...

  5. log4j输出日志乱码(转)

    log4j日志文件乱码问题的解决方法 log4j日志文件中文乱码处理方法 log4j 控制台和文件输出乱码问题解决 写在前面,第三篇文章中将原因解释的最清楚,为什么设置为UTF-8或者GBK就生效了, ...

  6. 05 sublime环境配置及编译运行后输出中文乱码的解决

    编译后的乱码问题 编译后的输出:中文显示异常: 编译C出现乱码问题解决 解决思路:解决办法很简单,就是先设置文件编码为GBK格式,之后再输入中文文字,运行时的中文就不是乱码了. 首先,sublime中 ...

  7. tomcat启动 ssm项目出现乱码的解决

    0.乱码产生原因:编码和解码的方式是不同 1.出现乱码的解决方式[推荐]: 在tomcat 的配置文件web.xml 中添加上请求编码过滤器: <!-- 请求编码过滤器 --> <f ...

  8. linux-2 下tomcat重启定向输出日志

    #!/bin/sh pid=`ps aux | grep tomcat | grep -v grep | awk '{print $2}'` echo $pid if [ -n "$pid& ...

  9. 运行 Tomcat, 在 Intellij IDEA 控制台输出中文乱码的解决方法

    打开 Run/Debug Configurations → Tomcat Server → 要运行的 Tomcat → Server 页签,在 VM options 中输入: -Dfile.encod ...

随机推荐

  1. linux sed 命令,sed -i

    -i 参数 :直接在原文件上进行操作整条语句意思是将b.c文件里第一个匹配printa替换为printb

  2. C# 你什么让程序员寂寞成酱紫 (男生版 娱乐中学习 抽象类 接口 继承 实现方法 )

    你什么让程序员寂寞成酱紫 (男生版 娱乐中学习 抽象类 接口 继承 实现方法 )   一个家庭 相当于 一个空间,这个空间里 有 很多元素,比如 爱,爱这个抽象事物,可能有很多动作,接吻.交流,对于一 ...

  3. CMS内容管理系统 -- WorkSpace

  4. HDU3533 Escape

    题目: The students of the HEU are maneuvering for their military training. The red army and the blue a ...

  5. 常用的 Maven 命令

    maven 命令的格式为 mvn [plugin-name]:[goal-name],可以接受的参数如下. -D 指定参数,如 -Dmaven.test.skip=true 跳过单元测试: -P 指定 ...

  6. 浅谈html运行原理

    浅谈HTML运行原理,所谓的HTML简单的来说就是一个网页,虽然第一节就讲html原理可能大家会听不懂,就当是给一个初步印象把,至少大概知道一个网页的运行流程是怎样的,下面上一张图: 大致的一个htm ...

  7. spring - quartz - experssion 表达式

    字段 允许值 允许的特殊字符 秒 0-59 , - * / 分 0-59 , - * / 小时 0-23 , - * / 日期 1-31 , - * ? / L W C 月份 1-12 或者 JAN- ...

  8. 简单的UIButton按钮动画效果iOS源码

    这个是简单的UIButton按钮动画效果案例,源码,简单的UIButton按钮动画,可以自定义button属性. 效果图: <ignore_js_op> 使用方法: 使用时把ButtonA ...

  9. 推荐几个好用的windows软件

    好久没上了,= = 之前用了一段MAC,感觉好用的地方就是 spotlight和触摸板,哈哈 然后在用回windows之后就找了一下,我之前有用Launchy这个软件,但是他是用来启动程序的,当然你也 ...

  10. 图像的全局特征--HOG特征、DPM特征

    HOG特征:方向梯度直方图(Histogram of Oriented Gradient,)特征是一种全局图像特征描述子. 它通过计算和统计图像局部区域的梯度方向直方图来构成特征.Hog特征结合SVM ...