InfluxData's T.I.C.K. stack is made up from the following components:
Component | Role |
---|---|
Telegraf | Data collector |
InfluxDB | Stores data |
Chronograf | Visualizer |
using System.Net.Http; | |
using (var client = new HttpClient()) | |
{ | |
var url = "http://google.com/api-example"; | |
var response = client.GetAsync(url).Result; | |
if (response.IsSuccessStatusCode) | |
{ | |
// by calling .Result you are performing a synchronous call |
### MONGO | |
db.createUser({user: "mongo-admin", pwd: "password", roles:[{role: "root", db: "admin"}]}) | |
mongo -u dsals -p --authenticationDatabase dbname | |
### Create MYSWL User and grant the user ready only. | |
create user 'username'@'%' identified by ‘password‘; | |
grant select, show view on database_name.* to 'username'@'%' identified by 'password'; |
server { | |
listen 443 ssl; | |
listen [::]:443 ssl; | |
server_name blog.chmouel.com; | |
ssl on; | |
ssl_certificate /etc/letsencrypt/live/blog.chmouel.com/fullchain.pem; | |
ssl_certificate_key /etc/letsencrypt/live/blog.chmouel.com/privkey.pem; | |
ssl_protocols TLSv1 TLSv1.1 TLSv1.2; |
# wget https://gist.githubusercontent.com/waja/d9e176f712ae6a6e4442486df80a13ba/raw/deploy_unattended-upgrades.sh -O /tmp/a && sh /tmp/a | |
apt-get -y install unattended-upgrades needrestart && \ | |
cat > /etc/apt/apt.conf.d/10periodic <<EOF | |
APT::Periodic::Update-Package-Lists "1"; | |
APT::Periodic::Download-Upgradeable-Packages "1"; | |
APT::Periodic::AutocleanInterval "7"; | |
APT::Periodic::Unattended-Upgrade "1"; | |
EOF | |
sed -i 's#// "o=Debian,n=jessie"# "o=Debian,n=jessie"#' /etc/apt/apt.conf.d/50unattended-upgrades && \ | |
sed -i 's#// "o=Debian,n=jessie-updates"# "o=Debian,n=jessie-updates"#' /etc/apt/apt.conf.d/50unattended-upgrades && \ |
upstream puma { | |
server unix:///home/deploy/apps/level0/shared/tmp/sockets/level0-puma.sock; | |
} | |
server { | |
listen 80 default_server deferred; | |
# server_name example.com; | |
root /home/deploy/apps/level0/current/public; | |
access_log /home/deploy/apps/level0/current/log/nginx.access.log; |
const makeRequest = async () => { | |
const value1 = await promise1() | |
const value2 = await promise2(value1) | |
return promise3(value1, value2) | |
} |
<!-- add this to /var/ossec/etc/shared/agent.conf --> | |
<localfile> | |
<log_format>syslog</log_format> | |
<location>/var/log/fail2ban.log</location> | |
</localfile> |
import sys | |
import smtplib | |
from email.MIMEMultipart import MIMEMultipart | |
from email.MIMEText import MIMEText | |
name = "Ruan" | |
from_address = "[email protected]" | |
to_address = "[email protected]" | |
subject = "Test" |
trim_trailing_whitespace = true |