Grunt

Elasticsearch Logstash Kibana Filebeat 搭建

谁说胖子不能爱 提交于 2021-02-11 10:43:12
阅读文本大概需要3分钟。 ELK+Filebeat的流程应该是这样的:Filebeat->Logstash->(Elasticsearch<->Kibana)由我们自己的程序产生出日志,由Filebeat进行处理,将日志数据输出到Logstash中,Logstash再将数据输出到Elasticsearch中,Elasticsearch再与Kibana相结合展示给用户。 Elasticsearch: 能对大容量的数据进行接近实时的存储,搜索和分析操作。 Logstash: 数据收集引擎,它支持动态的的从各种数据源获取数据,并对数据进行过滤,分析,丰富,统一格式等操作,然后存储到用户指定的位置。 Kibana: 数据分析与可视化平台,对Elasticsearch存储的数据进行可视化分析,通过表格的形式展现出来。 Filebeat: 轻量级的开源日志文件数据搜集器。 通常在需要采集数据的客户端安装Filebeat,并指定目录与日志格式,Filebeat就能快速收集数据,并发送给logstash进行解析,或是直接发给Elasticsearch存储 0x01: ElasticSearch 搭建 首先 在local下面创建elk目录 然后下载elasticsearch,logstash,kibana cd usr / local mkdir elk wget https : /

「前端工程化」该怎么理解?

自作多情 提交于 2021-02-09 13:40:10
关注「 前端向后 」微信公众号,你将收获一系列「用 心 原创」的高质量技术文章,主题包括但不限于前端、Node.js以及服务端技术 一.什么是前端工程? 一个类似的术语是软件工程(Software Engineering): Software engineering is the systematic application of engineering approaches to the development of software. 将工程方法系统化地应用到软件开发中,就叫软件工程 。那么,紧接着又有两个问题: 工程方法是什么? 系统化怎么理解? 工程是指使用科学原理设计和制造机器、结构等,比如修桥、铺路、建隧道、造车、盖房子: Engineering is the use of scientific principles to design and build machines, structures, and other items, including bridges, tunnels, roads, vehicles, and buildings. 具体到软件领域,指的是 以系统、严谨、可量化的方法开发、运营、维护软件 ,软件工程包括对这些方法的应用和研究: Software engineering the application of a systematic,

使用GRUNT压缩和合并js文件

﹥>﹥吖頭↗ 提交于 2021-01-05 08:15:51
目标 Grunt是一个简单好用的js文件压缩和合并工具,当一个页面需要加载过个js文件时,合并多个js文件可以减少http请求次数,提高页面加载速度。另外,Grunt的uglify功能可以起到混淆和隐藏js代码逻辑作用。 安装nodejs和Grunt命令行 Grunt运行nodejs环境中,通过npm进行安装。Grunt 0.4.x 需要Node.js 版本 >= 0.8.0。 nodejs的安装这里不再赘述,可以根据使用的操作系统选择合适的方式进行安装。例如在Centos系统下可以用如下命令安装: yum install -y nodejs 更新npm到最新版本: npm update -g npm 然后安装Grunt命令行环境 npm install -g grunt-cli 配置Grunt工程环境 一个Grunt工程环境就是Grunt要在其中工作的目录,配置完毕后可以对该目录下的js进行压缩和合并。 假设我们的工程目录结构如下: ./ ./js ./dist ./ 为我们的而工程根目录 js 目录下存放需要压缩合并的js文件 dist 目录存放我们稍后合并输出的文件。 在工程根目录下放置两个文件: package.json 和 Gruntfile.js 。 这是两个必要的文件,也是最重要和容易出错的环节,一定要记着将你最新编辑的文件放置到工程根目录下。 package

怎样提高js的编程能力

与世无争的帅哥 提交于 2020-12-11 08:00:48
1,学习js分几个阶段,没入门,入门初学者,中级水平,高级水平,ppt水平。 2,没入门的如何学习? 我当初是先学jquery,有css和html基础,有css基础看jq的语法很简单,就是选择符,jq的api懂高中英语就够了,猜也猜的出来意思,然后下载基本jq的chm手册,对着挨个看一遍。(这个挨个看一遍的意思就是一行一句的逐个看一遍,看不懂的别死扣,先看完再说)。 看完一遍之后,心中有数,哦,原来有个ajax函数可以访问网络资源,有个success可以写回调方法,超时怎么办?几个一起同时发怎么办?不管了,用到再说。哦,原来有个find函数可以查找dom节点,哦,原来有个serialize函数可以序列化表单值,哦,原来有个toggle函数可以做切换用,哦,有个fn可以挂着写插件用,哦,切换cls这样做就行了,哦,请求json数据这样配置参数就可以了。 做到了解,你就成功了,用到的时候知道jq能干什么,不能干什么,干什么的时候去看哪一章,再去仔细研究,做东西开始有点慢,做起来几个东西之后就手熟了。 同理,我学习yui2,kissy,mootools,nodejs,react,ng,甚至swift部分也是这样对着手册来的,反复几遍就可以了。 入门的意思就是概括一下,我知道有哪些api能干什么,具体怎么干,用的时候再说。 2,入门初学者。 我看完手册了,也写了几个小项目了

用gulp花5分钟优化工作流

拈花ヽ惹草 提交于 2020-12-08 07:46:32
感谢支持ayqy个人订阅号,每周义务推送1篇( only unique one )原创精品博文,话题包括但不限于前端、Node、Android、数学(WebGL)、语文(课外书读后感)、英语(文档翻译) 如果觉得弱水三千,一瓢太少,可以去 http://blog.ayqy.net 看个痛快 写在前面 5分钟是昨天的梗,不要打我,哈哈 一.为什么是gulp? 说起构建工具(打包工具),就想起忧伤的grunt,还有去年5月的那篇笔记:Grunt教程 可选的构建工具非常多: 疯狂编写配置文件的grunt pipe来pipe去的gulp logo很棒的webpack 不喜欢拐弯抹角的npm scripts 自称跨时代的rollup … 但为什么是gulp? 首先,grunt过气了,去年5月grunt还勉强撑得住(插件数量比gulp多很多,所以才有了那篇笔记),现在已经没什么优势了,插件数量不再是gulp的短板 如npm scripts所说,pipe不是gulp原创,操作系统本来就支持,所以npm scripts的理念是 直面shell命令,去掉不需要的抽象层 (grunt, gulp…),比如gulp-jshint,直接执行jshint提供的cli不就完了,要gulp干啥? 至于webpack/rollup,应该和grunt/gulp差不多(都属于npm scripts眼中不必要的抽象层)

Insight API开源项目分析

隐身守侯 提交于 2020-11-26 13:12:13
首先,在阅读本文以前假设您已经了解比特币Bitcoin基本原理。 Insight API是一个开源基于比特币Bitcoin blockchain的REST风格的API框架。Insight API运行于NodeJS环境,使用LevelDB做数据存储。使用Insight API可以开发基于Bitcoin的应用程序,如获取blockchain信息的钱包。这里我们介绍此刻最新版本2.7,它还有一个前端项目Insight。生产环境运行在这儿。 安装 以Ubuntu为环境。Windows环境问题较多,我们不介绍。它的依赖项目与组件: 第一步:bitcoind 下载安装Bitcoin Node.js v.010.x Node.js NPM 安装node时应该就有了 第二步:获取insight-api $ git clone https://github.com/bitpay/insight-api && cd insight-api 安装依赖组件,从package.json中我们可以看到依赖组件: "bitcore": "git://github.com/bitpay/bitcore.git#4d8af75ae9916984c52ee2eda1870d5980656341", "base58-native": "0.1.2", "async": "*", "leveldown": "*",

package.json 笔记

夙愿已清 提交于 2020-11-25 06:07:48
package.json 1、概述: 每个项目的根目录下面,一般都有一个 package.json 文件,定义了这个项目所需要的各种模块,以及项目的配置信息(比如 名称、版本、许可证等元数据 )。 npm install 命令根据这个配置文件,自动下载所需的模块,也就是配置项目所需的运行和开发环境。 package.json :>>>内部是json对象 { "name " : "xxx ", //name就是项目名称 "version " : "0.0.0 ", //version是版本(遵守“大版本.次要版本.小版本”的格式)。 } 完整的package.json { "name ": "Hello World ", "version ": "0.0.1 ", "author ": "张三 ", "description ": "第一个node.js程序 ", "keywords ":[ "node.js ", "javascript "], "repository ": { "type ": "git ", "url ": "https://path/to/url " }, "license ": "MIT ", "engines ": { "node ": "0.10.x "}, "bugs ":{ "url ": "http://path/to/bug ", "email

ElasticSearch搜索引擎入门基础(详细步骤)

我的未来我决定 提交于 2020-10-24 18:39:27
ElasticSearch 概述: 学习,从百度开始。 以下是Elasticsearch百度百科的介绍,如果已经了解,可以跳过。 ​ Elasticsearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。 ​ Elasticsearch是用Java语言开发的,并作为Apache许可条款下的开放源码发布,是一种流行的企业级搜索引擎。Elasticsearch用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。官方客户端在Java、.NET(C#)、PHP、Python、Apache Groovy、Ruby和许多其他语言中都是可用的。根据DB-Engines的排名显示,Elasticsearch是最受欢迎的企业搜索引擎,其次是Apache Solr,也是基于Lucene。 ​ Elasticsearch 是一个分布式、高扩展、高实时的搜索与数据分析引擎。它能很方便的使大量数据具有搜索、分析和探索的能力。充分利用Elasticsearch的水平伸缩性,能使数据在生产环境变得更有价值。 ​ Elasticsearch 的实现原理主要分为以下几个步骤,首先用户将数据提交到Elasticsearch 数据库中,再通过分词控制器去将对应的语句分词,将其权重和分词结果一并存入数据,当用户搜索数据时候

Elasticsearch在Centos下搭建可视化服务

。_饼干妹妹 提交于 2020-10-18 15:31:26
要想可视化ElasticSearch,就需要安装一些插件,安装插件的前提是安装所依赖的环境,比如maven等。 一、下载hear插件及node、配置node环境 wget https://github.com/mobz/elasticsearch-head/archive/master.zip 由于运行head需要运行node所以也要下载node,这里是node下载列表 https://npm.taobao.org/mirrors/node wget https://npm.taobao.org/mirrors/node/latest-v4.x/node-v4.4.7-linux-x64.tar.gz tar -zxvf node-v4.4.7-linux-x64.tar.gz # vim /etc/profile //编辑文件增加以下内容 //---- NODE_HOME=/usr/local/src/node-v0.10.28-linux-x64 CLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin:$NODE_HOME/bin NODE_PATH=$NODE_HOME/lib/node_modules /

【ELK7.4】 集群部署

我与影子孤独终老i 提交于 2020-10-01 23:49:48
一、 简介 Elasticsearch是一个高度可扩展的开源全文搜索和分析引擎。它允许您快速,近实时地存储,搜索和分析大量数据。它通常用作支持具有复杂搜索功能和需求的应用程序的底层引擎/技术。 架构图: 二、安装前准备 服务器环境 Node1: ES、 Node2: ES、filebeat、logstash Node3: ES、kibana 1、系统优化(在正式安装前需要进行系统优化,负责无法启动) 单个JVM下支撑的线程数 vim /etc/sysctl.conf vm.max_map_count=655360 vm.swappiness=0 修改文件句柄数 root用户设置 vim /etc/security/limits.conf root soft nofile 65535 root hard nofile 65535 * soft nofile 65536 * hard nofile 65536 * soft memlock unlimited * hard memlock unlimited 普通账户设置 (es使用非root启动) vim /etc/security/limits.d/20-nproc.conf * soft nproc 65535 * hard nproc 65535 root soft nproc unlimited 2、基础环境 #配置主机名