以前在测试streamsets 的时候就发现中文乱码,后边也每太注意,以为支持问题,今天跑了下单元
测试代码,以及使用本机运行,发现都没有问题,然后运行以前的配置,使用jjs 发现模式的编码为
ANSI_X3.4-1968

原有环境准备

 
version: "3"
services:
   sets:
     image: streamsets/datacollector 
     volumes:
     - "./ms/data:/data"
     - "./ms/logs:/logs"
     - "./ms/tmp:/tmp"
     ports:
     - "8000:8000"
     - "18630:18630"
   redis:
     image: redis
     ports:
     - "6379:6379"
   mongodb:
     image: mongo
     ports:
     - "27017:27017"

使用jjs 查看方式

  • 进入容器
docker-compose exec sets sh
  • 使用jjs 命令查看默认额编码
var s = Java.type("java.lang.System")
print(s.getProperty("file.encoding"))
print(s.getProperty("sun.jnu.encoding"))

结果为上边说的ANSI_X3.4-1968

结果方法

修改默认编码为utf-8

  • dockerfile
FROM streamsets/datacollector:3.12.0-latest
ENV SDC_JAVA_OPTS="-Dfile.encoding=UTF-8 -Dsun.jnu.encoding=utf-8"
ENV SDC_JAVA8_OPTS="-Dfile.encoding=UTF-8 -Dsun.jnu.encoding=utf-8"
  • docker-compose 文件
version: "3"
services:
   sets:
     build: ./
     volumes:
     - "./ms/data:/data"
     - "./ms/logs:/logs"
     - "./ms/tmp:/tmp"
     ports:
     - "8000:8000"
     - "18630:18630"
   redis:
     image: redis
     ports:
     - "6379:6379"
   mongodb:
     image: mongo:3.0
     ports:
     - "27017:27017"
  • 安装mongodb 包
  • 创建一个简单的微服务pipeline

  • 配置

expression 处理

mongodb

测试效果

启动pipeline很简单, 点击start 即可

  • 模拟http 数据
curl -i -X POST http://localhost:8000/rest/v1/user --header "X-SDC-APPLICATION-ID:microservice" -d '{"ID":1, "NAME": "Sample Name 荣", "AGE":34, "ADDRESS": "2333 San Francisco"}'
  • mongodb 数据存储

说明

以上处理的方法比较简单,主要是记录下一个处理的问题的思路以及解决方法

参考资料

https://streamsets.com/documentation/datacollector/latest/help/datacollector/UserGuide/Configuration/DCEnvironmentConfig.html#concept_rng_qym_qr
https://github.com/streamsets/datacollector-docker

streamsets 官方默认镜像中文支持问题的更多相关文章

  1. 解决UnicodeEncodeError。python的docker镜像增加locale 中文支持

    用pandas的pd.read_excel()打开中文名的xlsx,报错,本来以为是xlrd的问题后来发现,是open()函数就报错: “UnicodeEncodeError: 'ascii' cod ...

  2. RedHat安装中文支持和字体

    操作系统: Red Hat Enterprise Linux 6.3 x86 安装中文语言支持: yum install "@chinese support" 安装完中文支持后,可 ...

  3. [我给Unity官方视频教程做中文字幕]beginner Graphics – Lessons系列之纹理Textures

    [我给Unity官方视频教程做中文字幕]beginner Graphics – Lessons系列之纹理Textures 本篇分享一下第6个已完工的视频,即<beginner Graphics ...

  4. SWFUpload 2.5.0版 官方说明文档 中文翻译版

    原文地址:http://www.cnblogs.com/youring2/archive/2012/07/13/2590010.html#setFileUploadLimit SWFUpload v2 ...

  5. Jupyter Notebook PDF输出的中文支持

    Jupyter Notebook是什么 Jupyter Notebook是ipython Notebook 的升级.Jupyter能够将实时代码,公式,可视化图表以Cell的方式组织在一起,形成一个对 ...

  6. 官方Tomcat镜像Dockerfile分析及镜像使用

    官方Tomcat镜像 地址:https://hub.docker.com/_/tomcat/ 镜像的Full Description中,我们可以得到许多信息,这里简单介绍下: Supported ta ...

  7. Go 语言官方包函数中文翻译

    Go官方包函数中文翻译 *** import "strings" func Join(a []string, sep string) string Join concatenate ...

  8. 关于Docker官方CentOS镜像无法启动mysqld的总结

    很多童鞋反映,在Docker官方CentOS镜像中安装了Mysql server后,无法正常启动. 无法正常启动表现为两种情况: 1> 初始完数据库后,mysqld启动报错 2> syst ...

  9. Windows7微软官方原版镜像系统文件

    Windows7微软官方原版镜像系统 Windows 7 是由微软公司(Microsoft)开发的操作系统,核心版本号为Windows NT 6.1.Windows 7可供家庭及 商业工作环境.笔记本 ...

随机推荐

  1. HTML连载31-制作一个百度首页

    一. 我们制作一个百度首页作为练习,可直接复制该代码保存后缀名为.html来查看 <!DOCTYPE html> <html lang="en"> < ...

  2. ICP&TPS:最近邻

    经过了一段时间的研bai究gei...终于可以偷得几天闲了. 这里来补个档. 无论是ICP还是TPS,缺乏锚点的前提下.你总是要通过找另一个曲面的最近的点来实现你的work beimat:点数*3,f ...

  3. Go命令行—compile

    常用作编译命令行指定的单个go源码包.会生成一个以文件.o为后缀的目标文件,其文件名与包内第一个源文件的文件名相同. 目标文件可以与其他对象组合成一个包档案或直接传递给链接器(go tool link ...

  4. 如何查询正在运行的SQL Server agent job

    运行"msdb"系统数据库下的存储过程"dbo.sp_help_job",可以得知现在SQL Server中有多少个正在运行的agent job: USE [m ...

  5. Mvc 入门及基础了解

    用于表示一种软件架构模式.它把软件系统分为三个基本部分 _模型(Model), _视图(View) _和控制器(Controller). 其中主要代码是 路由 配置默认的路径: 默认配置 是 Home ...

  6. Windows Form父子两个窗体之间的传值测试

    1:先看测试的效果图: 2:全部的代码 using System; using System.Windows.Forms; namespace WindowsForms { public partia ...

  7. js javascript 如何获取某个值在数组中的下标

    js 某个值在数组中的下标javascript中知道一个数组中的一个元素的值,如何获取数组下标JS 获取数组某个元素下标 函数方法 采用prototype原型实现方式,查找元素在数组中的索引值js查找 ...

  8. iframe超出外层元素显示滚动条怎么办?

    尝试把外层盒子滚动条样式隐藏,或者设为overflow:hidden等都不生效,突然发现iframe有这个属性的忘记用了!! <iframe frameborder="0" ...

  9. 关于css中的定位

    关于前端的几种定位方式 近期自己感觉自己对于前端定位的知识还是不是太理解,所以自己就在这里做一个总结 1.元素的定位属性主要包括定位模式和边偏移两部分. 边偏移属性 描述 top       bott ...

  10. Webpack相关原理浅析

    基本打包机制 本质上,webpack 是一个现代 JavaScript 应用程序的静态模块打包器(module bundler).当 webpack 处理应用程序时,它会递归地构建一个依赖关系图(de ...