PURSUE ULTIMATE FACTS

2019-10-19
Try Jupyter Dashboards

I think it is a bit like appmode.

https://github.com/oschuett/appmode

In [ ]:
!sudo -E pip install jupyter_dashboards
!sudo -E jupyter dashboards quick-setup --sys-prefix
In [ ]:
!sudo -HE pip install -r ~/dashboards.git/requirements-demo.txt

Notebooks can not be well shown in Grid Layout with my Jupyter Dashboards.

In [ ]:
!sudo -E jupyter dashboards quick-remove --sys-prefix
Read More

2019-10-19
Try Commuter

In [ ]:
!sudo -E npm install @nteract/commuter -g
In [ ]:
!sudo -E npm install --build-from-source canvas@2.6.0 -g --unsafe-perm=true --allow-root --verbose

Turn to yarn

In [ ]:
%%bash
curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add -
echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list

sudo apt-get update && sudo apt-get install --no-install-recommends yarn
In [ ]:
!sudo -E yarn global add @nteract/commuter

Check Install Result

In [ ]:
!cat /usr/local/share/.config/yarn/global/node_modules/@nteract/commuter/package.json

Concerning commuter

In [ ]:
!cat /usr/local/share/.config/yarn/global/node_modules/@nteract/commuter/package.json | grep -1 --color commuter
{
  "name": "@nteract/commuter",
  "version": "5.9.0",
--
  "bin": {
    "commuter": "bin.js"
  },
--
  },
  "homepage": "https://github.com/nteract/nteract/tree/master/applications/commuter#readme",
  "publishConfig": {

Concerning bin.js

In [ ]:
!cat /usr/local/share/.config/yarn/global/node_modules/@nteract/commuter/bin.js
#!/usr/bin/env node

process.env.NODE_ENV = "production";

require("./lib/index.js");

Concerning backend

In [ ]:
!cat /usr/local/share/.config/yarn/global/node_modules/@nteract/commuter/package.json | grep -1 --color backend
    "build:frontend-for-production": "next build",
    "build:server": "babel backend -d lib",
    "build:all": "npm run build:server && npm run build:frontend-for-production",
In [ ]:
!sed -n '6,17p' /usr/local/share/.config/yarn/global/node_modules/@nteract/commuter/package.json
  "scripts": {
    "predev": "npm run build:server",
    "dev": "NODE_ENV=development node lib/index.js",
    "prestart": "npm run build:all",
    "start": "NODE_ENV=production node lib/index.js",
    "build": "npm run build:all",
    "build:frontend-for-production": "next build",
    "build:server": "babel backend -d lib",
    "build:all": "npm run build:server && npm run build:frontend-for-production",
    "prepublishOnly": "npm run build:all",
    "test": "jest"
  },

Concerning index.js

In [ ]:
!cat /usr/local/share/.config/yarn/global/node_modules/@nteract/commuter/lib/index.js
"use strict";

var log = require("log");

var createServer = require("./server");

createServer().then(function (server) {
  var port = server.address().port;
  console.log(log);
  log.info("Commuter server listening on port " + port);
})["catch"](function (e) {
  console.error(e);
  console.error(e.stack);
  process.exit(-10);
});

Concerning port

In [ ]:
!cat /usr/local/share/.config/yarn/global/node_modules/@nteract/commuter/pages/discover.js | grep -w1 --color port
      // Server side, communicate with our local API
      const port = process.env.COMMUTER_PORT || 4000;
      BASE_PATH = `http://127.0.0.1:${port}/`;
    } else {

Run Commuter

In [ ]:
!commuter
Read More

2019-10-13
Try PaperBoby

In [ ]:
!cd ~ && git clone https://github.com/timkpaine/paperboy.git
Cloning into 'paperboy'...
remote: Enumerating objects: 21, done.
remote: Counting objects: 100% (21/21), done.
remote: Compressing objects: 100% (21/21), done.
remote: Total 3388 (delta 3), reused 3 (delta 0), pack-reused 3367
Receiving objects: 100% (3388/3388), 12.04 MiB | 22.38 MiB/s, done.
Resolving deltas: 100% (2277/2277), done.
In [ ]:
%%bash
cd ~/paperboy/
sudo -E npm install
sudo -E npm run build
sudo -E pip install -e .
In [ ]:
!sudo -E python -m paperboy
CRITICAL:root:Using SQL backend
CRITICAL:root:Using SQL auth
CRITICAL:root:Using dummy scheduler
[2019-10-13 18:36:29 +0900] [2696] [INFO] Starting gunicorn 19.9.0
[2019-10-13 18:36:29 +0900] [2696] [INFO] Listening at: http://0.0.0.0:8080 (2696)
[2019-10-13 18:36:29 +0900] [2696] [INFO] Using worker: sync
[2019-10-13 18:36:29 +0900] [2701] [INFO] Booting worker with pid: 2701
CRITICAL:root:Storing user sheng_wei eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpZCI6IjEiLCJuYW1lIjoic2hlbmdfd2VpIn0.oKJsYgZJaj1dLoVR8JgTjfPGp2O8bf3jqmoRux1bNgw 1
CRITICAL:root:list : <class 'paperboy.storage.sqla.models.notebook.NotebookSQL'>, result : 0 - 0
CRITICAL:root:list : <class 'paperboy.storage.sqla.models.job.JobSQL'>, result : 0 - 0
CRITICAL:root:list : <class 'paperboy.storage.sqla.models.report.ReportSQL'>, result : 0 - 0
CRITICAL:root:Storing notebook <Notebook(name='TEST', user='<User(name='sheng_wei')>', privacy='public', level='production'>
CRITICAL:root:list : <class 'paperboy.storage.sqla.models.job.JobSQL'>, result : 0 - 0
CRITICAL:root:list : <class 'paperboy.storage.sqla.models.job.JobSQL'>, result : 0 - 0
[2019-10-13 18:43:59 +0900] [2701] [ERROR] Error handling request /api/v1/jobs?action=save
Traceback (most recent call last):
  File "/opt/tljh/user/lib/python3.6/site-packages/gunicorn/workers/sync.py", line 135, in handle
    self.handle_request(listener, req, client, addr)
  File "/opt/tljh/user/lib/python3.6/site-packages/gunicorn/workers/sync.py", line 176, in handle_request
    respiter = self.wsgi(environ, resp.start_response)
  File "/opt/tljh/user/lib/python3.6/site-packages/falcon/api.py", line 244, in __call__
    responder(req, resp, **params)
  File "/home/jupyter-sheng_wei/paperboy/paperboy/resources/job.py", line 21, in on_post
    resp.body = json.dumps(self.db.jobs.store(req.context['user'], req.params, self.session, self.scheduler))
  File "/home/jupyter-sheng_wei/paperboy/paperboy/storage/sqla/job.py", line 42, in store
    nb_sql = session.query(NotebookSQL).get(int(justid(notebookid)))
ValueError: invalid literal for int() with base 10: 'attachment.ipynb'
[2019-10-13 18:44:22 +0900] [2701] [ERROR] Error handling request /api/v1/jobs?action=save
Traceback (most recent call last):
  File "/opt/tljh/user/lib/python3.6/site-packages/gunicorn/workers/sync.py", line 135, in handle
    self.handle_request(listener, req, client, addr)
  File "/opt/tljh/user/lib/python3.6/site-packages/gunicorn/workers/sync.py", line 176, in handle_request
    respiter = self.wsgi(environ, resp.start_response)
  File "/opt/tljh/user/lib/python3.6/site-packages/falcon/api.py", line 244, in __call__
    responder(req, resp, **params)
  File "/home/jupyter-sheng_wei/paperboy/paperboy/resources/job.py", line 21, in on_post
    resp.body = json.dumps(self.db.jobs.store(req.context['user'], req.params, self.session, self.scheduler))
  File "/home/jupyter-sheng_wei/paperboy/paperboy/storage/sqla/job.py", line 42, in store
    nb_sql = session.query(NotebookSQL).get(int(justid(notebookid)))
ValueError: invalid literal for int() with base 10: 'attachment.ipynb'
[2019-10-13 18:44:23 +0900] [2701] [ERROR] Error handling request /api/v1/jobs?action=save
Traceback (most recent call last):
  File "/opt/tljh/user/lib/python3.6/site-packages/gunicorn/workers/sync.py", line 135, in handle
    self.handle_request(listener, req, client, addr)
  File "/opt/tljh/user/lib/python3.6/site-packages/gunicorn/workers/sync.py", line 176, in handle_request
    respiter = self.wsgi(environ, resp.start_response)
  File "/opt/tljh/user/lib/python3.6/site-packages/falcon/api.py", line 244, in __call__
    responder(req, resp, **params)
  File "/home/jupyter-sheng_wei/paperboy/paperboy/resources/job.py", line 21, in on_post
    resp.body = json.dumps(self.db.jobs.store(req.context['user'], req.params, self.session, self.scheduler))
  File "/home/jupyter-sheng_wei/paperboy/paperboy/storage/sqla/job.py", line 42, in store
    nb_sql = session.query(NotebookSQL).get(int(justid(notebookid)))
ValueError: invalid literal for int() with base 10: 'attachment.ipynb'
[2019-10-13 18:44:23 +0900] [2701] [ERROR] Error handling request /api/v1/jobs?action=save
Traceback (most recent call last):
  File "/opt/tljh/user/lib/python3.6/site-packages/gunicorn/workers/sync.py", line 135, in handle
    self.handle_request(listener, req, client, addr)
  File "/opt/tljh/user/lib/python3.6/site-packages/gunicorn/workers/sync.py", line 176, in handle_request
    respiter = self.wsgi(environ, resp.start_response)
  File "/opt/tljh/user/lib/python3.6/site-packages/falcon/api.py", line 244, in __call__
    responder(req, resp, **params)
  File "/home/jupyter-sheng_wei/paperboy/paperboy/resources/job.py", line 21, in on_post
    resp.body = json.dumps(self.db.jobs.store(req.context['user'], req.params, self.session, self.scheduler))
  File "/home/jupyter-sheng_wei/paperboy/paperboy/storage/sqla/job.py", line 42, in store
    nb_sql = session.query(NotebookSQL).get(int(justid(notebookid)))
ValueError: invalid literal for int() with base 10: 'attachment.ipynb'
[2019-10-13 18:44:23 +0900] [2701] [ERROR] Error handling request /api/v1/jobs?action=save
Traceback (most recent call last):
  File "/opt/tljh/user/lib/python3.6/site-packages/gunicorn/workers/sync.py", line 135, in handle
    self.handle_request(listener, req, client, addr)
  File "/opt/tljh/user/lib/python3.6/site-packages/gunicorn/workers/sync.py", line 176, in handle_request
    respiter = self.wsgi(environ, resp.start_response)
  File "/opt/tljh/user/lib/python3.6/site-packages/falcon/api.py", line 244, in __call__
    responder(req, resp, **params)
  File "/home/jupyter-sheng_wei/paperboy/paperboy/resources/job.py", line 21, in on_post
    resp.body = json.dumps(self.db.jobs.store(req.context['user'], req.params, self.session, self.scheduler))
  File "/home/jupyter-sheng_wei/paperboy/paperboy/storage/sqla/job.py", line 42, in store
    nb_sql = session.query(NotebookSQL).get(int(justid(notebookid)))
ValueError: invalid literal for int() with base 10: 'attachment.ipynb'
CRITICAL:root:Storing job <Job(name='TEST', user='<User(name='sheng_wei')>', notebook='<Notebook(name='TEST', user='<User(name='sheng_wei')>', privacy='public', level='production'>', start='2019-10-13 09:37:00', interval='minutely'>
CRITICAL:root:list : <class 'paperboy.storage.sqla.models.notebook.NotebookSQL'>, result : 1 - 1
CRITICAL:root:list : <class 'paperboy.storage.sqla.models.notebook.NotebookSQL'>, result : 1 - 1
CRITICAL:root:list : <class 'paperboy.storage.sqla.models.job.JobSQL'>, result : 1 - 1
CRITICAL:root:list : <class 'paperboy.storage.sqla.models.report.ReportSQL'>, result : 0 - 0
CRITICAL:root:detail : 1, result : <Job(name='TEST', user='<User(name='sheng_wei')>', notebook='<Notebook(name='TEST', user='<User(name='sheng_wei')>', privacy='public', level='production'>', start='2019-10-13 09:37:00', interval='minutely'>
CRITICAL:root:list : <class 'paperboy.storage.sqla.models.job.JobSQL'>, result : 1 - 1
CRITICAL:root:list : <class 'paperboy.storage.sqla.models.job.JobSQL'>, result : 1 - 1
CRITICAL:root:detail : 1, result : <Job(name='TEST', user='<User(name='sheng_wei')>', notebook='<Notebook(name='TEST', user='<User(name='sheng_wei')>', privacy='public', level='production'>', start='2019-10-13 09:37:00', interval='minutely'>
CRITICAL:root:list : <class 'paperboy.storage.sqla.models.report.ReportSQL'>, result : 0 - 0
CRITICAL:root:list : <class 'paperboy.storage.sqla.models.report.ReportSQL'>, result : 0 - 0
CRITICAL:root:list : <class 'paperboy.storage.sqla.models.report.ReportSQL'>, result : 0 - 0
CRITICAL:root:list : <class 'paperboy.storage.sqla.models.report.ReportSQL'>, result : 0 - 0
CRITICAL:root:list : <class 'paperboy.storage.sqla.models.report.ReportSQL'>, result : 0 - 0
CRITICAL:root:list : <class 'paperboy.storage.sqla.models.notebook.NotebookSQL'>, result : 1 - 1
CRITICAL:root:list : <class 'paperboy.storage.sqla.models.job.JobSQL'>, result : 1 - 1
CRITICAL:root:list : <class 'paperboy.storage.sqla.models.report.ReportSQL'>, result : 0 - 0
CRITICAL:root:detail : 1, result : <Notebook(name='TEST', user='<User(name='sheng_wei')>', privacy='public', level='production'>
CRITICAL:root:Storing notebook <Notebook(name='BQ', user='<User(name='sheng_wei')>', privacy='public', level='production'>
CRITICAL:root:detail : 2, result : <Notebook(name='BQ', user='<User(name='sheng_wei')>', privacy='public', level='production'>
[2019-10-13 18:54:20 +0900] [2701] [ERROR] Error handling request /api/v1/jobs?action=save
Traceback (most recent call last):
  File "/opt/tljh/user/lib/python3.6/site-packages/gunicorn/workers/sync.py", line 135, in handle
    self.handle_request(listener, req, client, addr)
  File "/opt/tljh/user/lib/python3.6/site-packages/gunicorn/workers/sync.py", line 176, in handle_request
    respiter = self.wsgi(environ, resp.start_response)
  File "/opt/tljh/user/lib/python3.6/site-packages/falcon/api.py", line 244, in __call__
    responder(req, resp, **params)
  File "/home/jupyter-sheng_wei/paperboy/paperboy/resources/job.py", line 21, in on_post
    resp.body = json.dumps(self.db.jobs.store(req.context['user'], req.params, self.session, self.scheduler))
  File "/home/jupyter-sheng_wei/paperboy/paperboy/storage/sqla/job.py", line 42, in store
    nb_sql = session.query(NotebookSQL).get(int(justid(notebookid)))
ValueError: invalid literal for int() with base 10: 'BQ'
[2019-10-13 18:54:35 +0900] [2701] [ERROR] Error handling request /api/v1/jobs?action=save
Traceback (most recent call last):
  File "/opt/tljh/user/lib/python3.6/site-packages/gunicorn/workers/sync.py", line 135, in handle
    self.handle_request(listener, req, client, addr)
  File "/opt/tljh/user/lib/python3.6/site-packages/gunicorn/workers/sync.py", line 176, in handle_request
    respiter = self.wsgi(environ, resp.start_response)
  File "/opt/tljh/user/lib/python3.6/site-packages/falcon/api.py", line 244, in __call__
    responder(req, resp, **params)
  File "/home/jupyter-sheng_wei/paperboy/paperboy/resources/job.py", line 21, in on_post
    resp.body = json.dumps(self.db.jobs.store(req.context['user'], req.params, self.session, self.scheduler))
  File "/home/jupyter-sheng_wei/paperboy/paperboy/storage/sqla/job.py", line 42, in store
    nb_sql = session.query(NotebookSQL).get(int(justid(notebookid)))
ValueError: invalid literal for int() with base 10: 'BQ'
CRITICAL:root:list : <class 'paperboy.storage.sqla.models.notebook.NotebookSQL'>, result : 2 - 2
CRITICAL:root:list : <class 'paperboy.storage.sqla.models.notebook.NotebookSQL'>, result : 2 - 2
CRITICAL:root:list : <class 'paperboy.storage.sqla.models.notebook.NotebookSQL'>, result : 2 - 2
CRITICAL:root:list : <class 'paperboy.storage.sqla.models.notebook.NotebookSQL'>, result : 2 - 2
CRITICAL:root:detail : 2, result : <Notebook(name='BQ', user='<User(name='sheng_wei')>', privacy='public', level='production'>
CRITICAL:root:Storing job <Job(name='BQ', user='<User(name='sheng_wei')>', notebook='<Notebook(name='BQ', user='<User(name='sheng_wei')>', privacy='public', level='production'>', start='2019-10-13 09:51:00', interval='minutely'>
CRITICAL:root:list : <class 'paperboy.storage.sqla.models.job.JobSQL'>, result : 2 - 2
CRITICAL:root:detail : 2, result : <Job(name='BQ', user='<User(name='sheng_wei')>', notebook='<Notebook(name='BQ', user='<User(name='sheng_wei')>', privacy='public', level='production'>', start='2019-10-13 09:51:00', interval='minutely'>
CRITICAL:root:list : <class 'paperboy.storage.sqla.models.report.ReportSQL'>, result : 0 - 0
[2019-10-13 18:59:11 +0900] [2696] [CRITICAL] WORKER TIMEOUT (pid:2701)
[2019-10-13 18:59:11 +0900] [2701] [INFO] Worker exiting (pid: 2701)
[2019-10-13 18:59:11 +0900] [2863] [INFO] Booting worker with pid: 2863
CRITICAL:root:list : <class 'paperboy.storage.sqla.models.notebook.NotebookSQL'>, result : 2 - 2
CRITICAL:root:list : <class 'paperboy.storage.sqla.models.job.JobSQL'>, result : 2 - 2
CRITICAL:root:list : <class 'paperboy.storage.sqla.models.report.ReportSQL'>, result : 0 - 0
CRITICAL:root:detail : 2, result : <Job(name='BQ', user='<User(name='sheng_wei')>', notebook='<Notebook(name='BQ', user='<User(name='sheng_wei')>', privacy='public', level='production'>', start='2019-10-13 09:51:00', interval='minutely'>
CRITICAL:root:list : <class 'paperboy.storage.sqla.models.job.JobSQL'>, result : 2 - 2
[2019-10-13 19:01:55 +0900] [2863] [ERROR] Error handling request /api/v1/reports?action=save
Traceback (most recent call last):
  File "/opt/tljh/user/lib/python3.6/site-packages/gunicorn/workers/sync.py", line 135, in handle
    self.handle_request(listener, req, client, addr)
  File "/opt/tljh/user/lib/python3.6/site-packages/gunicorn/workers/sync.py", line 176, in handle_request
    respiter = self.wsgi(environ, resp.start_response)
  File "/opt/tljh/user/lib/python3.6/site-packages/falcon/api.py", line 244, in __call__
    responder(req, resp, **params)
  File "/home/jupyter-sheng_wei/paperboy/paperboy/resources/report.py", line 21, in on_post
    resp.body = json.dumps(self.db.reports.store(req.context['user'], req.params, self.session))
  File "/home/jupyter-sheng_wei/paperboy/paperboy/storage/sqla/report.py", line 50, in store
    jb_sql = session.query(JobSQL).get(int(justid(jobid)))
ValueError: invalid literal for int() with base 10: 'BQ'
[2019-10-13 19:01:57 +0900] [2863] [ERROR] Error handling request /api/v1/reports?action=save
Traceback (most recent call last):
  File "/opt/tljh/user/lib/python3.6/site-packages/gunicorn/workers/sync.py", line 135, in handle
    self.handle_request(listener, req, client, addr)
  File "/opt/tljh/user/lib/python3.6/site-packages/gunicorn/workers/sync.py", line 176, in handle_request
    respiter = self.wsgi(environ, resp.start_response)
  File "/opt/tljh/user/lib/python3.6/site-packages/falcon/api.py", line 244, in __call__
    responder(req, resp, **params)
  File "/home/jupyter-sheng_wei/paperboy/paperboy/resources/report.py", line 21, in on_post
    resp.body = json.dumps(self.db.reports.store(req.context['user'], req.params, self.session))
  File "/home/jupyter-sheng_wei/paperboy/paperboy/storage/sqla/report.py", line 50, in store
    jb_sql = session.query(JobSQL).get(int(justid(jobid)))
ValueError: invalid literal for int() with base 10: 'BQ'
[2019-10-13 19:01:57 +0900] [2863] [ERROR] Error handling request /api/v1/reports?action=save
Traceback (most recent call last):
  File "/opt/tljh/user/lib/python3.6/site-packages/gunicorn/workers/sync.py", line 135, in handle
    self.handle_request(listener, req, client, addr)
  File "/opt/tljh/user/lib/python3.6/site-packages/gunicorn/workers/sync.py", line 176, in handle_request
    respiter = self.wsgi(environ, resp.start_response)
  File "/opt/tljh/user/lib/python3.6/site-packages/falcon/api.py", line 244, in __call__
    responder(req, resp, **params)
  File "/home/jupyter-sheng_wei/paperboy/paperboy/resources/report.py", line 21, in on_post
    resp.body = json.dumps(self.db.reports.store(req.context['user'], req.params, self.session))
  File "/home/jupyter-sheng_wei/paperboy/paperboy/storage/sqla/report.py", line 50, in store
    jb_sql = session.query(JobSQL).get(int(justid(jobid)))
ValueError: invalid literal for int() with base 10: 'BQ'
CRITICAL:root:list : <class 'paperboy.storage.sqla.models.notebook.NotebookSQL'>, result : 2 - 2
CRITICAL:root:list : <class 'paperboy.storage.sqla.models.job.JobSQL'>, result : 2 - 2
CRITICAL:root:list : <class 'paperboy.storage.sqla.models.report.ReportSQL'>, result : 0 - 0
^C
[2019-10-13 19:02:42 +0900] [2696] [INFO] Handling signal: int
[2019-10-13 19:02:42 +0900] [2863] [INFO] Worker exiting (pid: 2863)

The versions of dependencies are too low. There are too many bugs.

It seems that the maintenance of PaperBoy has been stopped.

Well. Maybe I can reuse some of the codes.

But I found a new Jupyter Dashboard used by PaperBoy.

Read More

2019-10-08
Try Appmod and NBGitPuller

Try Appmode

In [ ]:
!sudo -E pip install appmode
!sudo -E jupyter nbextension     enable --py --sys-prefix appmode
!sudo -E jupyter serverextension enable --py --sys-prefix appmode

Try NBGitPuller

In [ ]:
!sudo -E pip install -U nbgitpuller
In [ ]:
from nbgitpuller import pull
pull.__file__
In [ ]:
from nbgitpuller import handlers
handlers.__file__

Change repo_url to clone_cmd

In [ ]:
!cd ~ && git clone --branch change-to-clone-command https://github.com/seii-saintway/nbgitpuller.git
In [ ]:
!sudo cp ~/nbgitpuller/nbgitpuller/pull.py /opt/tljh/user/lib/python3.6/site-packages/nbgitpuller/pull.py
!sudo cp ~/nbgitpuller/nbgitpuller/handlers.py /opt/tljh/user/lib/python3.6/site-packages/nbgitpuller/handlers.py
  • https://jhub.name
  • git clone https://github.com/seii-saintway/nbgitpuller
  • change-to-clone-command
  • binder/link_generator.ipynb
  • app

https://jhub.name/hub/user-redirect/git-pull?repo=git+clone+https%3A%2F%2Fgithub.com%2Fseii-saintway%2Fnbgitpuller&branch=change-to-clone-command&subPath=binder%2Flink_generator.ipynb&app=app

Installation

In [ ]:
!sudo -E pip install git+https://github.com/seii-saintway/nbgitpuller@change-to-clone-command
Read More

2019-10-06
Make isso HTTPS with TLJH Traefik Proxy

Make Isso HTTPS in TLJH

In [ ]:
%%bash
/opt/tljh/hub/bin/traefik version

for traefik v1.7

In [ ]:
%%bash
cat << EOF | sudo tee -a /opt/tljh/state/rules.toml > /dev/null

[frontends.isso]
backend = "isso"
passHostHeader = true

[frontends.isso.routes.f1]
rule = "PathPrefixStrip:/isso/"

[backends.isso.servers.s1]
url = "http://127.0.0.1:8000"
weight = 1
EOF
In [ ]:
%env http=http:\/\/jhub.name:8000\/
%env https=https:\/\/jhub.name\/isso\/
!sed -i -e "s/$http/$https/g" ~/hexo/themes/freemind/layout/_partial/post/comment.ejs

for traefik v2.10 StripPrefix

In [ ]:
%%bash
cat << EOF | sudo tee /opt/tljh/state/rules/isso.toml > /dev/null
[http.routers.isso]
service = "isso"
rule = "PathPrefix(\`/isso/\`)"
entryPoints = [ "https",]
middlewares = ["isso"]

[http.middlewares]
  [http.middlewares.isso.stripPrefix]
    prefixes = ["/isso"]

[http.services.isso.loadBalancer]
passHostHeader = true
[[http.services.isso.loadBalancer.servers]]
url = "http://127.0.0.1:8000"
EOF
In [ ]:
%%bash
cat << EOF | sudo tee /opt/tljh/state/dynamic/isso.toml > /dev/null
[frontends.isso]
backend = "isso"
passHostHeader = true

[frontends.isso.routes.f1]
rule = "PathPrefixStrip:/isso/"

[backends.isso.servers.s1]
url = "http://127.0.0.1:8000"
weight = 1
EOF
In [ ]:
!sudo /opt/tljh/hub/bin/python -m tljh.installer
Granting passwordless sudo to JupyterHub admins...
Setting up user environment...


==> WARNING: A newer version of conda exists. <==
  current version: 4.5.8
  latest version: 4.7.12

Please update conda by running

    $ conda update -n base conda


Setting up JupyterHub...
In [ ]:
!sudo cat /opt/tljh/installer.log
2019-10-13 15:21:02,889 Granting passwordless sudo to JupyterHub admins...
2019-10-13 15:21:02,890 Setting up user environment...
2019-10-13 15:21:26,052 Setting up JupyterHub...
In [ ]:
!cd ~ && make restart-isso

Isso SQLite

In [ ]:
%%bash
cat << EOF | sudo tee /etc/isso.conf > /dev/null

[general]

dbpath = /var/lib/isso/comments.db

host =
    http://seii-saintway.github.io
    https://seii-saintway.github.io
    http://digitypography.xyz
    https://digitypography.xyz

EOF

Open SQLite database

sqlite3 /var/lib/isso/comments.db
In [ ]:
import sqlite3
conn = sqlite3.connect('/var/lib/isso/comments.db')
In [ ]:
[(row[6], row[7]) for row in conn.cursor().execute('SELECT * from comments')]
Out[ ]:
[('110.3.247.0', '# Privacy Policy'),
 ('113.38.215.0', '# Continuous Purification'),
 ('110.3.247.0',
  '### 3.11.4 隐秘通道\n\n隐秘通道(covert channel)的意思是说使用难以预料或不会引起注意的方式来发送信息。假设有一天系统管理员Sally觉得自己的那些用户花太多时间来玩了,因此她决定关闭email和即时消息,这样他们就不能聊天了。要解决这个问题,你和你的朋友都同意使用主目录中的一个你们都可以读取的文件来交流信息,你每隔一会儿就得检查一下该文件来查看新消息。这种超出乎预料的通信方式就是一个隐秘通道。\n\n隐秘通道很难取消。如果系统管理员Sally发现了你们这种基于文件的通信技术,她可以修改目录的权限,使得只有目录的属主才具有读取和搜索的权限,并限定目录属主也不能修改这种权限。在这样做的同时,她还可以确认你不能在其他地方(例如,/tmp)创建文件。(你的大部分程序都不能运行了,但是不要因此而责怪Sally。)即使是这样,你和你的朋友仍然可以相互显示其他用户士目录中的内容,这可以显示目录的修改日期和文件个数,这样你就可以根据这些可见的参数设计一种密码,并通过修改这些参数而进行通信。这是一种更复杂的隐秘通道,如果Sally对你们进行了更严格的限制,你们可以想出更古怪的法子来。\n\nSSH不能防止隐秘通道。对隐秘通道的分析和控制通常都是安全性很高的计算机系统的一部分,例如设计用来在同一个系统中的不同安全层次上安全地处理信息的系统。顺便说一下,SSH数据流本身就可以很好地用作一种隐秘通道:SSH会话的内容可能是一个巧克力馅饼的配方,而隐含的内容则可能是用Morse码表示这两个公司即将合并,只需要使用报文长度是奇数还是偶数来分别表示Morse码的短横线和点号即可。'),
 ('126.158.192.0', 'Try to build with Cosmos SDK'),
 ('126.158.192.0', 'Try to build with Cosmos SDK')]
In [ ]:
[row for row in conn.cursor().execute('SELECT * from preferences')]
In [ ]:
[row for row in conn.cursor().execute('SELECT * from threads')]
Out[ ]:
[(1, '/2019/07/17/%E5%BF%83%E6%83%85%E7%B3%9F%E9%80%8F%E4%BA%86/', None),
 (2, '/2022/02/25/Declaration-of-the-Independence-of-Cyberspace/', None),
 (3, '/2022/02/28/An-Independent-Stablecoin-of-Cyberspace/', None)]
In [ ]:
conn.close()
Read More

2019-10-06
Try To Import Notebooks

In [ ]:
import Try_To_Import_Python
Try_To_Import_Python.py

Here is some simple code to display the contents of a notebook with syntax highlighting, etc.

In [ ]:
from pygments import highlight
from pygments.lexers import PythonLexer
from pygments.formatters import HtmlFormatter

from IPython.display import display, HTML

formatter = HtmlFormatter()
lexer = PythonLexer()

# publish the CSS for pygments highlighting
display(HTML("""
<style type='text/css'>
%s
</style>
""" % formatter.get_style_defs()
))
In [ ]:
def show_notebook(fname):
    """display a short summary of the cells of a notebook"""
    import io
    with io.open(fname, 'r', encoding='utf-8') as f:
        from nbformat import read
        nb = read(f, 4)
    html = []
    for cell in nb.cells:
        html.append("<h4>%s cell</h4>" % cell.cell_type)
        if cell.cell_type == 'code':
            html.append(highlight(cell.source, lexer, formatter))
        else:
            html.append("<pre>%s</pre>" % cell.source)
    display(HTML('\n'.join(html)))

show_notebook('Importing Notebooks.ipynb')

markdown cell

# Importing Jupyter Notebooks as Modules

markdown cell

It is a common problem that people want to import code from Jupyter Notebooks.
This is made difficult by the fact that Notebooks are not plain Python files,
and thus cannot be imported by the regular Python machinery.

Fortunately, Python provides some fairly sophisticated [hooks](https://www.python.org/dev/peps/pep-0302/) into the import machinery,
so we can actually make Jupyter notebooks importable without much difficulty,
and only using public APIs.

code cell

import io, os, sys, types

code cell

from IPython import get_ipython
from nbformat import read
from IPython.core.interactiveshell import InteractiveShell

markdown cell

Import hooks typically take the form of two objects:

1. a Module **Loader**, which takes a module name (e.g. `'IPython.display'`), and returns a Module
2. a Module **Finder**, which figures out whether a module might exist, and tells Python what **Loader** to use

code cell

def find_notebook(fullname, path=None):
    """find a notebook, given its fully qualified name and an optional path
    
    This turns "foo.bar" into "foo/bar.ipynb"
    and tries turning "Foo_Bar" into "Foo Bar" if Foo_Bar
    does not exist.
    """
    name = fullname.rsplit('.', 1)[-1]
    if not path:
        path = ['']
    for d in path:
        nb_path = os.path.join(d, name + ".ipynb")
        if os.path.isfile(nb_path):
            return nb_path
        # let import Notebook_Name find "Notebook Name.ipynb"
        nb_path = nb_path.replace("_", " ")
        if os.path.isfile(nb_path):
            return nb_path
            

markdown cell

## Notebook Loader

markdown cell

Here we have our Notebook Loader.
It's actually quite simple - once we figure out the filename of the module,
all it does is:

1. load the notebook document into memory
2. create an empty Module
3. execute every cell in the Module namespace

Since IPython cells can have extended syntax,
the IPython transform is applied to turn each of these cells into their pure-Python counterparts before executing them.
If all of your notebook cells are pure-Python,
this step is unnecessary.

code cell

class NotebookLoader(object):
    """Module Loader for Jupyter Notebooks"""
    def __init__(self, path=None):
        self.shell = InteractiveShell.instance()
        self.path = path
    
    def load_module(self, fullname):
        """import a notebook as a module"""
        path = find_notebook(fullname, self.path)
        
        print ("importing Jupyter notebook from %s" % path)
                                       
        # load the notebook object
        with io.open(path, 'r', encoding='utf-8') as f:
            nb = read(f, 4)
        
        
        # create the module and add it to sys.modules
        # if name in sys.modules:
        #    return sys.modules[name]
        mod = types.ModuleType(fullname)
        mod.__file__ = path
        mod.__loader__ = self
        mod.__dict__['get_ipython'] = get_ipython
        sys.modules[fullname] = mod
        
        # extra work to ensure that magics that would affect the user_ns
        # actually affect the notebook module's ns
        save_user_ns = self.shell.user_ns
        self.shell.user_ns = mod.__dict__
        
        try:
          for cell in nb.cells:
            if cell.cell_type == 'code':
                # transform the input to executable Python
                code = self.shell.input_transformer_manager.transform_cell(cell.source)
                # run the code in themodule
                exec(code, mod.__dict__)
        finally:
            self.shell.user_ns = save_user_ns
        return mod

markdown cell

## The Module Finder

markdown cell

The finder is a simple object that tells you whether a name can be imported,
and returns the appropriate loader.
All this one does is check, when you do:

```python
import mynotebook
```

it checks whether `mynotebook.ipynb` exists.
If a notebook is found, then it returns a NotebookLoader.

Any extra logic is just for resolving paths within packages.

code cell

class NotebookFinder(object):
    """Module finder that locates Jupyter Notebooks"""
    def __init__(self):
        self.loaders = {}
    
    def find_module(self, fullname, path=None):
        nb_path = find_notebook(fullname, path)
        if not nb_path:
            return
        
        key = path
        if path:
            # lists aren't hashable
            key = os.path.sep.join(path)
        
        if key not in self.loaders:
            self.loaders[key] = NotebookLoader(path)
        return self.loaders[key]

markdown cell

## Register the hook

markdown cell

Now we register the `NotebookFinder` with `sys.meta_path`

code cell

sys.meta_path.append(NotebookFinder())

markdown cell

After this point, my notebooks should be importable.

Let's look at what we have in the CWD:

code cell

ls nbpackage

markdown cell

So I should be able to `import nbpackage.mynotebook`.

code cell

import nbpackage.mynotebook

markdown cell

### Aside: displaying notebooks

markdown cell

Here is some simple code to display the contents of a notebook
with syntax highlighting, etc.

code cell

from pygments import highlight
from pygments.lexers import PythonLexer
from pygments.formatters import HtmlFormatter

from IPython.display import display, HTML

formatter = HtmlFormatter()
lexer = PythonLexer()

# publish the CSS for pygments highlighting
display(HTML("""
<style type='text/css'>
%s
</style>
""" % formatter.get_style_defs()
))

code cell

def show_notebook(fname):
    """display a short summary of the cells of a notebook"""
    with io.open(fname, 'r', encoding='utf-8') as f:
        nb = read(f, 4)
    html = []
    for cell in nb.cells:
        html.append("<h4>%s cell</h4>" % cell.cell_type)
        if cell.cell_type == 'code':
            html.append(highlight(cell.source, lexer, formatter))
        else:
            html.append("<pre>%s</pre>" % cell.source)
    display(HTML('\n'.join(html)))

show_notebook(os.path.join("nbpackage", "mynotebook.ipynb"))

markdown cell

So my notebook has some code cells,
one of which contains some IPython syntax.

Let's see what happens when we import it

code cell

from nbpackage import mynotebook

markdown cell

Hooray, it imported!  Does it work?

code cell

mynotebook.foo()

markdown cell

Hooray again!

Even the function that contains IPython syntax works:

code cell

mynotebook.has_ip_syntax()

code cell

mynotebook.whatsmyname()

markdown cell

## Notebooks in packages

markdown cell

We also have a notebook inside the `nb` package,
so let's make sure that works as well.

code cell

ls nbpackage/nbs

markdown cell

Note that the `__init__.py` is necessary for `nb` to be considered a package,
just like usual.

code cell

show_notebook(os.path.join("nbpackage", "nbs", "other.ipynb"))

code cell

from nbpackage.nbs import other
other.bar(5)

markdown cell

So now we have importable notebooks, from both the local directory and inside packages.

I can even put a notebook inside IPython, to further demonstrate that this is working properly:

code cell

import shutil
from IPython.paths import get_ipython_package_dir

utils = os.path.join(get_ipython_package_dir(), 'utils')
shutil.copy(os.path.join("nbpackage", "mynotebook.ipynb"),
            os.path.join(utils, "inside_ipython.ipynb")
)

markdown cell

and import the notebook from `IPython.utils`

code cell

from IPython.utils import inside_ipython
inside_ipython.whatsmyname()

markdown cell

This approach can even import functions and classes that are defined in a notebook using the `%%cython` magic.

A simple way to import .ipynb files in jupyter notebook are as follows:

  1. Install import-ipynb
In [ ]:
!sudo -E pip install import-ipynb
  1. Import import_ipynb in jupyter notebook. Then import .ipynb file as you import .py file.
In [ ]:
import import_ipynb
from nbpackage import mynotebook

mynotebook.whatsmyname()
importing Jupyter notebook from /home/jupyter-sheng_wei/hexo/source/notebooks/Try-Notebook-Import/nbpackage/mynotebook.ipynb
Out[ ]:
'nbpackage.mynotebook'
In [ ]:
mynotebook.__name__
Out[ ]:
'nbpackage.mynotebook'
In [ ]:
mynotebook.__file__
Out[ ]:
'/home/jupyter-sheng_wei/hexo/source/notebooks/Try-Notebook-Import/nbpackage/mynotebook.ipynb'
In [ ]:
import import_ipynb
from nbpackage.nbs import other
other.bar(10)
importing Jupyter notebook from /home/jupyter-sheng_wei/hexo/source/notebooks/Try-Notebook-Import/nbpackage/nbs/other.ipynb
Out[ ]:
'barbarbarbarbarbarbarbarbarbar'
Read More

2019-10-06
Try Datalab

launching Datalab on the Google Cloud Platform

https://cloud.google.com/datalab/docs/quickstart

In [ ]:
!git clone https://github.com/GoogleCloudPlatform/datalab.git
In [ ]:
!PROJECT_ID=sandbox-243014 datalab/containers/datalab/build.sh
In [ ]:
!PROJECT_ID=sandbox-243014 datalab/containers/datalab/run.sh
In [ ]:
!docker run --rm -it -p "8081:8080" -v "${HOME}:/content" -e "PROJECT_ID=sandbox-243014" gcr.io/cloud-datalab/datalab:local
In [ ]:
!sudo -E pip install datalab
!sudo -E jupyter nbextension install --py datalab.notebook --sys-prefix

!sudo -E pip install google.cloud.monitoring
In [ ]:
!jupyter nbextension list
In [ ]:
%load_ext google.datalab.kernel
%gcs read --object gs://fluentd_test/avro --variable t
print(t)
In [ ]:
!git clone https://github.com/googledatalab/notebooks.git
In [ ]:
!ls 'notebooks/tutorials/BigQuery/Importing and Exporting Data.ipynb'
!ls 'notebooks/tutorials/Storage/Storage Commands.ipynb'
In [ ]:
?set_datalab_project_id
In [ ]:
%load_ext google.datalab.kernel
%gcs list --objects gs://fluentd_test
In [ ]:
%load_ext google.datalab.kernel
In [ ]:
%gcs list --project sandbox-243014 --objects gs://fluentd_test
In [ ]:
%env PROJECT_ID=sandbox-243014
Read More

2019-10-06
Solve PyDatalab Incompatible with Python 3.7

In [ ]:
!git clone https://github.com/googledatalab/pydatalab.git
In [ ]:
!grep -r 'async' --include='*.py' pydatalab/datalab/
In [ ]:
!pip install --upgrade requests grpcio
!cd pydatalab && pip install .
In [ ]:
!grep -r 'async' --include='*.py' /home/sheng_wei/anaconda3/lib/python3.7/site-packages/datalab/
In [ ]:
!grep -r 'yaml' --include='*.py' /home/sheng_wei/anaconda3/lib/python3.7/site-packages/google/datalab/utils/commands/_utils.py
Read More

2019-10-05
Hexo Generate Notebook CSS

Remove Duplicated Notebook CSS

  • Add Category and Tag to Notebooks
  • Move Notebook CSS to <head></head>

Add Category and Tag to Notebooks

I find that the hexo layouts for Categories and Tags are almost the same, but it seems that the the usage of Tags is more casual. So I decide to add Tag "Notebooks" to my Notebook posts.

Read More

2019-09-30
Hexo Notebook 集成教程

Hexo Notebook 集成教程

本文介绍如何在 Hexo 静态博客中集成 Jupyter Notebook,实现代码、文档和可视化的完美结合。

A Primitive Post of ipynb

In [ ]:
!sudo ln -sf `which python` /usr/bin/python
!cd ~/hexo/node_modules && rm -rf hexo-ipynb
!cd ~/hexo/node_modules && git clone --branch fix/freeman https://github.com/seii-saintway/hexo-ipynb.git
Cloning into 'hexo-ipynb'...
remote: Enumerating objects: 9, done.
remote: Counting objects: 100% (9/9), done.
remote: Compressing objects: 100% (8/8), done.
remote: Total 67 (delta 0), reused 7 (delta 0), pack-reused 58
Unpacking objects: 100% (67/67), done.
In [ ]:
!rm ~/hexo/source/_posts/Hexo-Notebook.md
!cd ~/hexo && node_modules/hexo/bin/hexo new post Hexo-Notebook
!echo '{% asset_ipynb notebooks/Hexo-Notebook.ipynb %}' >> ~/hexo/source/_posts/Hexo-Notebook.md
(node:3618) [DEP0061] DeprecationWarning: fs.SyncWriteStream is deprecated.
INFO  Created: ~/hexo/source/_posts/Hexo-Notebook.md
In [ ]:
!cd ~/hexo && node_modules/hexo/bin/hexo clean
!cd ~/hexo && node_modules/hexo/bin/hexo server --debug
(node:3650) [DEP0061] DeprecationWarning: fs.SyncWriteStream is deprecated.
INFO  Deleted database.
INFO  Deleted public folder.
08:38:42.004 DEBUG Writing database to /home/jupyter-sheng_wei/hexo/db.json
08:38:42.030 DEBUG Hexo version: 3.9.0
08:38:42.031 DEBUG Working directory: ~/hexo/
08:38:42.122 DEBUG Config loaded: ~/hexo/_config.yml
08:38:42.203 DEBUG Plugin loaded: hexo-deployer-git
(node:3662) [DEP0061] DeprecationWarning: fs.SyncWriteStream is deprecated.
08:38:42.206 DEBUG Plugin loaded: hexo-generator-archive
08:38:42.210 DEBUG Plugin loaded: hexo-generator-category
08:38:42.211 DEBUG Plugin loaded: hexo-generator-index
08:38:42.212 DEBUG Plugin loaded: hexo-generator-tag
08:38:42.213 DEBUG Plugin loaded: hexo-ipynb
08:38:42.216 DEBUG Plugin loaded: hexo-renderer-ejs
08:38:42.221 DEBUG Plugin loaded: hexo-renderer-marked
08:38:42.222 DEBUG Plugin loaded: hexo-renderer-stylus
08:38:42.266 DEBUG Plugin loaded: hexo-server
08:38:42.267 DEBUG Plugin loaded: hexo-util
08:38:42.275 DEBUG Loading database.
08:38:42.284 INFO  Start processing
08:38:42.326 DEBUG Processed: favicon.png
08:38:42.395 DEBUG Processed: notebooks/Remove-Duplicated-Notebook-CSS.ipynb
08:38:42.395 DEBUG Processed: notebooks/Try-BigTable.ipynb
08:38:42.396 DEBUG Processed: notebooks/Try-Colab.ipynb
08:38:42.397 DEBUG Processed: notebooks/Try-Digdag.ipynb
08:38:42.397 DEBUG Processed: notebooks/Try-FUSE.ipynb
08:38:42.398 DEBUG Processed: notebooks/Try-GCloud-ML-Engine.ipynb
08:38:42.399 DEBUG Processed: notebooks/Try-Google-AI-Platform.ipynb
08:38:42.399 DEBUG Processed: notebooks/Try-IPython-Magics.ipynb
08:38:42.400 DEBUG Processed: notebooks/Try-JS-Promise.ipynb
08:38:42.401 DEBUG Processed: notebooks/Try-LightGBM.ipynb
08:38:42.401 DEBUG Processed: notebooks/Try-NTERACT.ipynb
08:38:42.402 DEBUG Processed: notebooks/Try-OpenBridge-Google-Bigquery.ipynb
08:38:42.403 DEBUG Processed: notebooks/Try-TensorFlow.ipynb
08:38:42.403 DEBUG Processed: notebooks/Try-paperboy.ipynb
08:38:42.459 DEBUG Processed: notebooks/Hexo-Notebook.ipynb
08:38:42.492 DEBUG Theme config loaded.
08:38:42.493 DEBUG Processed: _config.yml
08:38:42.497 DEBUG Processed: notebooks/Kubernetes/Kubernetes-Tips.ipynb
08:38:42.498 DEBUG Processed: notebooks/Kubernetes/Try-Cluster-Autoscaling.ipynb
08:38:42.499 DEBUG Processed: notebooks/Kubernetes/Try-Skaffold.ipynb
08:38:42.499 DEBUG Processed: notebooks/Kubernetes/Try-Spinnaker-Operator.ipynb
08:38:42.500 DEBUG Processed: notebooks/Kubernetes/Try-Volcano.ipynb
08:38:42.500 DEBUG Processed: notebooks/Try-Datalab/Readme-Datalab.ipynb
08:38:42.501 DEBUG Processed: notebooks/Try-Datalab/Solve-Py37-PyDatalab.ipynb
08:38:42.502 DEBUG Processed: notebooks/Try-Datalab/Try-Datalab.ipynb
08:38:42.502 DEBUG Processed: notebooks/Try-Jupyter/Jupyter-Images.ipynb
08:38:42.503 DEBUG Processed: notebooks/Try-Jupyter/Jupyter-Magic.ipynb
08:38:42.504 DEBUG Processed: notebooks/Try-Jupyter/Jupyter-Tips.ipynb
08:38:42.504 DEBUG Processed: notebooks/Try-Jupyter/Try-Jupyter-Diff-Merge.ipynb
08:38:42.505 DEBUG Processed: notebooks/Try-Jupyter/Try-Jupyter-Frontends.ipynb
08:38:42.506 DEBUG Processed: notebooks/Try-Jupyter/Try-JupyterHub.ipynb
08:38:42.506 DEBUG Processed: notebooks/Try-Jupyter/Try-NBViewer.ipynb
08:38:42.507 DEBUG Processed: notebooks/Try-Notebook-Dashboard/Try-IPython-Dashboard.ipynb
08:38:42.507 DEBUG Processed: notebooks/Try-Notebook-Dashboard/Try-Jupyter-Dashboards.ipynb
08:38:42.508 DEBUG Processed: notebooks/Try-Notebook-Import/Importing Notebooks.ipynb
08:38:42.509 DEBUG Processed: notebooks/Try-Notebook-Import/Try-Notebook-Import.ipynb
08:38:42.509 DEBUG Processed: notebooks/Try-Notebook-Import/Try_To_Import_Python.py
08:38:42.517 DEBUG Processed: source/css/bootstrap-responsive.css
08:38:42.517 DEBUG Processed: source/css/comment.css
08:38:42.518 DEBUG Processed: source/css/font-awesome.css
08:38:42.518 DEBUG Processed: source/css/google-fonts.css
08:38:42.519 DEBUG Processed: source/css/highlight-default.min.css
08:38:42.520 DEBUG Processed: source/css/highlight.css
08:38:42.532 DEBUG Processed: source/css/responsive.css
08:38:42.533 DEBUG Processed: source/css/style.css
08:38:42.533 DEBUG Processed: source/fancybox/blank.gif
08:38:42.534 DEBUG Processed: source/fancybox/fancybox_loading.gif
08:38:42.534 DEBUG Processed: source/fancybox/fancybox_loading@2x.gif
08:38:42.535 DEBUG Processed: source/fancybox/fancybox_overlay.png
08:38:42.535 DEBUG Processed: source/fancybox/fancybox_sprite.png
08:38:42.536 DEBUG Processed: source/fancybox/fancybox_sprite@2x.png
08:38:42.536 DEBUG Processed: source/fancybox/jquery.fancybox.css
08:38:42.537 DEBUG Processed: source/fancybox/jquery.fancybox.pack.js
08:38:42.538 DEBUG Processed: source/fonts/fontawesome-webfont.eot
08:38:42.538 DEBUG Processed: source/fonts/fontawesome-webfont.woff
08:38:42.543 DEBUG Processed: source/img/github-sprite.png
08:38:42.545 DEBUG Processed: source/img/glyphicons-halflings-white.png
08:38:42.546 DEBUG Processed: source/img/glyphicons-halflings.png
08:38:42.546 DEBUG Processed: source/img/grid-18px-masked.png
08:38:42.547 DEBUG Processed: source/img/grid-baseline-20px.png
08:38:42.547 DEBUG Processed: source/js/bootstrap.min.js
08:38:42.548 DEBUG Processed: source/js/comment.js
08:38:42.549 DEBUG Processed: source/js/dbapi.js
08:38:42.549 DEBUG Processed: source/js/gallery.js
08:38:42.550 DEBUG Processed: source/js/github.js
08:38:42.550 DEBUG Processed: source/js/highlight.min.js
08:38:42.551 DEBUG Processed: source/js/jquery.imagesloaded.min.js
08:38:42.551 DEBUG Processed: source/js/main.js
08:38:42.552 DEBUG Processed: source/js/marked.js
08:38:42.552 DEBUG Processed: source/js/search.js
08:38:42.552 DEBUG Processed: source/js/spin.min.js
08:38:42.553 DEBUG Processed: source/js/timeago.min.js
08:38:42.582 DEBUG Processed: source/css/bootstrap.min.css
08:38:42.583 DEBUG Processed: source/css/themes/common.css
08:38:42.583 DEBUG Processed: source/fonts/FontAwesome.otf
08:38:42.583 DEBUG Processed: source/fonts/fontawesome-webfont.ttf
08:38:42.584 DEBUG Processed: source/js/jquery-2.0.3.min.js
08:38:42.634 DEBUG Processed: layout/archive.ejs
08:38:42.634 DEBUG Processed: layout/categories.ejs
08:38:42.634 DEBUG Processed: layout/index.ejs
08:38:42.634 DEBUG Processed: layout/layout.ejs
08:38:42.634 DEBUG Processed: layout/page.ejs
08:38:42.635 DEBUG Processed: layout/post.ejs
08:38:42.635 DEBUG Processed: layout/tags.ejs
08:38:42.664 DEBUG Processed: _drafts/問題.md
08:38:42.672 DEBUG Processed: about/index.html
08:38:42.672 DEBUG Processed: languages/default.yml
08:38:42.672 DEBUG Processed: languages/pt-BR.yml
08:38:42.672 DEBUG Processed: languages/zh-CN.yml
08:38:42.672 DEBUG Processed: languages/zh-TW.yml
08:38:42.674 DEBUG Processed: _drafts/孤独之美.md
08:38:42.674 DEBUG Processed: categories/index.html
08:38:42.675 DEBUG Processed: _posts/A-Real-time-Automatic-Level-Bar-Calibration-Based-on-Canny-Edge-Detection-and-Weighted-Least-Squares-Method.md
08:38:42.675 DEBUG Processed: tags/index.html
08:38:42.676 DEBUG Processed: _posts/Hexo-Notebook.md
08:38:42.678 DEBUG Processed: _posts/Hexo-研究.md
08:38:42.679 DEBUG Processed: _posts/JavaScript.md
08:38:42.684 DEBUG Processed: _posts/My-First-Test.md
08:38:42.686 DEBUG Processed: _posts/Preface.md
08:38:42.687 DEBUG Processed: _posts/Reference.md
08:38:42.688 DEBUG Processed: _posts/Skype授業.md
08:38:42.689 DEBUG Processed: _posts/Snippet.md
08:38:42.691 DEBUG Processed: _posts/feelings-I-m-missing-you.md
08:38:42.692 DEBUG Processed: _posts/hello-world.md
08:38:42.692 DEBUG Processed: notebooks/Try-Datalab/notebooks/Hello World.ipynb
08:38:42.693 DEBUG Processed: _posts/中國人前輩努力為我洗腦之後.md
08:38:42.694 DEBUG Processed: notebooks/Try-Datalab/notebooks/LICENSE.txt
08:38:42.695 DEBUG Processed: _posts/关于意义疗法.md
08:38:42.696 DEBUG Processed: _posts/心情糟透了.md
08:38:42.697 DEBUG Processed: notebooks/Try-Datalab/notebooks/Readme.ipynb
08:38:42.698 DEBUG Processed: _posts/心理防卫机制.md
08:38:42.699 DEBUG Processed: _posts/情殺.md
08:38:42.700 DEBUG Processed: _posts/戀愛交往的兩個原則.md
08:38:42.701 DEBUG Processed: _posts/我發現脫離了人群我就不能活.md
08:38:42.704 DEBUG Processed: _posts/探索研究.md
08:38:42.705 DEBUG Processed: _posts/日本語レッスン進捗.md
08:38:42.706 DEBUG Processed: _posts/死蔭的幽谷.md
08:38:42.707 DEBUG Processed: _posts/爱的吸引.md
08:38:42.709 DEBUG Processed: _posts/睡不着.md
08:38:42.710 DEBUG Processed: _posts/被开发环境的设计实现验证的问题困扰了三天之久.md
08:38:42.710 DEBUG Processed: _posts/除了我的妻子以外,凡拉黑我的都去屎。.md
08:38:42.711 DEBUG Processed: _posts/面膜.md
08:38:42.711 DEBUG Processed: notebooks/Try-Notebook-Import/nbpackage/mynotebook.ipynb
08:38:42.716 DEBUG Processed: source/css/themes/default.css
08:38:42.716 DEBUG Processed: source/fonts/google-fonts/0AKsP294HTD-nvJgucYTaIbN6UDyHWBl620a-IRfuBk.woff
08:38:42.717 DEBUG Processed: source/fonts/google-fonts/2UX7WLTfW3W8TclTUvlFyQ.woff
08:38:42.717 DEBUG Processed: source/fonts/google-fonts/LKf8nhXsWg5ybwEGXk8UBQ.woff
08:38:42.718 DEBUG Processed: source/fonts/google-fonts/PIPMHY90P7jtyjpXuZ2cLD8E0i7KZn-EPnyo3HZu7kw.woff
08:38:42.718 DEBUG Processed: source/fonts/google-fonts/UyYrYy3ltEffJV9QueSi4RdbPw3QSf9R-kE0EsQUn2A.woff
08:38:42.718 DEBUG Processed: source/fonts/google-fonts/cj2hUnSRBhwmSPr9kS5899kZXW4sYc4BjuAIFc1SXII.woff
08:38:42.719 DEBUG Processed: source/fonts/google-fonts/lILlYDvubYemzYzN7GbLkHhCUOGz7vYGh680lGh-uXM.woff
08:38:42.752 DEBUG Processed: _drafts/堅持兩個月.md
08:38:42.753 DEBUG Processed: _posts/就算累也必須堅持學日語.md
08:38:42.753 DEBUG Processed: _posts/认耶稣为主.md
08:38:42.753 DEBUG Processed: source/fonts/google-fonts/0XxGQsSc1g4rdRdjJKZrNBsxEYwM7FgeyaSgU71cLG0.woff
08:38:42.761 DEBUG Processed: layout/.ipynb_checkpoints/archive-checkpoint.ejs
08:38:42.761 DEBUG Processed: layout/_partial/after_footer.ejs
08:38:42.761 DEBUG Processed: layout/_partial/archive.ejs
08:38:42.761 DEBUG Processed: layout/_partial/article.ejs
08:38:42.761 DEBUG Processed: layout/_partial/footer.ejs
08:38:42.761 DEBUG Processed: layout/_partial/head.ejs
08:38:42.761 DEBUG Processed: layout/_partial/index.ejs
08:38:42.761 DEBUG Processed: layout/_partial/index_pagination.ejs
08:38:42.762 DEBUG Processed: layout/_partial/navigation.ejs
08:38:42.762 DEBUG Processed: layout/_partial/search.ejs
08:38:42.762 DEBUG Processed: layout/_partial/sidebar.ejs
08:38:42.762 DEBUG Processed: layout/_partial/toc.ejs
08:38:42.762 DEBUG Processed: layout/_widget/category.ejs
08:38:42.762 DEBUG Processed: layout/_widget/links.ejs
08:38:42.762 DEBUG Processed: layout/_widget/recent_comments.ejs
08:38:42.762 DEBUG Processed: layout/_widget/recent_posts.ejs
08:38:42.763 DEBUG Processed: layout/_widget/search.ejs
08:38:42.763 DEBUG Processed: layout/_widget/tagcloud.ejs
08:38:42.764 DEBUG Processed: _posts/最近码代码手感不错哟.md
08:38:42.766 DEBUG Processed: notebooks/Try-Datalab/notebooks/intro/Introduction to Notebooks.ipynb
08:38:42.767 DEBUG Processed: notebooks/Try-Datalab/notebooks/intro/Introduction to Python.ipynb
08:38:42.767 DEBUG Processed: notebooks/Try-Datalab/notebooks/intro/Using Datalab - Accessing Cloud Data.ipynb
08:38:42.768 DEBUG Processed: notebooks/Try-Datalab/notebooks/samples/Conversion Analysis with Google Analytics Data.ipynb
08:38:42.768 DEBUG Processed: notebooks/Try-Notebook-Import/nbpackage/nbs/other.ipynb
08:38:42.769 DEBUG Processed: source/css/themes/bootstrap.css
08:38:42.770 DEBUG Processed: source/css/themes/cerulean.css
08:38:42.770 DEBUG Processed: source/css/themes/cosmo.css
08:38:42.771 DEBUG Processed: source/css/themes/cyborg.css
08:38:42.772 DEBUG Processed: source/css/themes/darkly.css
08:38:42.772 DEBUG Processed: source/css/themes/journal.css
08:38:42.773 DEBUG Processed: source/css/themes/lumen.css
08:38:42.773 DEBUG Processed: source/css/themes/readable.css
08:38:42.773 DEBUG Processed: source/css/themes/sandstone.css
08:38:42.774 DEBUG Processed: source/css/themes/simplex.css
08:38:42.774 DEBUG Processed: source/css/themes/slate.css
08:38:42.775 DEBUG Processed: source/css/themes/spacelab.css
08:38:42.775 DEBUG Processed: source/css/themes/superhero.css
08:38:42.775 DEBUG Processed: source/css/themes/united.css
08:38:42.776 DEBUG Processed: source/css/themes/yeti.css
08:38:42.782 DEBUG Processed: source/css/notebook.css
08:38:42.782 DEBUG Processed: source/css/themes/flatly.css
08:38:42.793 DEBUG Processed: layout/_partial/.ipynb_checkpoints/head-checkpoint.ejs
08:38:42.793 DEBUG Processed: layout/_partial/post/analytics.ejs
08:38:42.793 DEBUG Processed: layout/_partial/post/category.ejs
08:38:42.793 DEBUG Processed: layout/_partial/post/comment.ejs
08:38:42.793 DEBUG Processed: layout/_partial/post/entry.ejs
08:38:42.793 DEBUG Processed: layout/_partial/post/bdshare.ejs
08:38:42.794 DEBUG Processed: layout/_partial/post/jiathis.ejs
08:38:42.794 DEBUG Processed: layout/_partial/post/meta.ejs
08:38:42.794 DEBUG Processed: layout/_partial/post/pagination.ejs
08:38:42.794 DEBUG Processed: layout/_partial/post/share.ejs
08:38:42.794 DEBUG Processed: layout/_partial/post/comment_footer.ejs
08:38:42.794 DEBUG Processed: layout/_partial/post/tag.ejs
08:38:42.794 DEBUG Processed: layout/_partial/post/slogan.ejs
08:38:42.794 DEBUG Processed: layout/_partial/post/title.ejs
08:38:42.795 DEBUG Processed: layout/_partial/post/title_top.ejs
08:38:42.798 DEBUG Processed: notebooks/Try-Datalab/notebooks/CONTRIBUTING.md
08:38:42.799 DEBUG Processed: notebooks/Try-Datalab/notebooks/README.md
08:38:42.800 DEBUG Processed: notebooks/Try-Datalab/notebooks/samples/Anomaly Detection in HTTP Logs.ipynb
08:38:42.801 DEBUG Processed: notebooks/Try-Datalab/notebooks/samples/contrib/README.txt
08:38:42.801 DEBUG Processed: notebooks/Try-Datalab/notebooks/tutorials/BigQuery/BigQuery APIs.ipynb
08:38:42.802 DEBUG Processed: notebooks/Try-Datalab/notebooks/tutorials/BigQuery/BigQuery Magic Commands and DML.ipynb
08:38:42.802 DEBUG Processed: notebooks/Try-Datalab/notebooks/tutorials/BigQuery/BigQuery Parameterization.ipynb
08:38:42.803 DEBUG Processed: notebooks/Try-Datalab/notebooks/tutorials/BigQuery/Hello BigQuery.ipynb
08:38:42.806 DEBUG Processed: notebooks/Try-Datalab/notebooks/tutorials/BigQuery/Importing and Exporting Data.ipynb
08:38:42.807 DEBUG Processed: notebooks/Try-Datalab/notebooks/tutorials/BigQuery/UDF Testing in the Notebook.ipynb
08:38:42.807 DEBUG Processed: notebooks/Try-Datalab/notebooks/tutorials/BigQuery/UDFs in BigQuery.ipynb
08:38:42.808 DEBUG Processed: notebooks/Try-Datalab/notebooks/tutorials/BigQuery/UDFs using Code in Cloud Storage.ipynb
08:38:42.808 DEBUG Processed: notebooks/Try-Datalab/notebooks/tutorials/BigQuery/Using External Tables from BigQuery.ipynb
08:38:42.809 DEBUG Processed: notebooks/Try-Datalab/notebooks/tutorials/Storage/Storage Commands.ipynb
08:38:42.809 DEBUG Processed: source/css/themes/paper.css
08:38:42.816 DEBUG Processed: notebooks/Try-Datalab/notebooks/tutorials/BigQuery/BigQuery Commands.ipynb
08:38:42.817 DEBUG Processed: notebooks/Try-Datalab/notebooks/tutorials/Storage/Storage APIs.ipynb
08:38:42.821 DEBUG Processed: notebooks/Try-Datalab/notebooks/samples/Exploring Genomics Data.ipynb
08:38:42.822 DEBUG Processed: notebooks/Try-Datalab/notebooks/samples/TensorFlow/LSTM Punctuation Model With TensorFlow.ipynb
08:38:42.822 DEBUG Processed: notebooks/Try-Datalab/notebooks/samples/contrib/pipeline/Airflow Setup.ipynb
08:38:42.823 DEBUG Processed: notebooks/Try-Datalab/notebooks/samples/contrib/pipeline/BigQuery Pipeline.ipynb
08:38:42.824 DEBUG Processed: notebooks/Try-Datalab/notebooks/tutorials/BigQuery/SQL Query Composition.ipynb
08:38:42.824 DEBUG Processed: notebooks/Try-Datalab/notebooks/tutorials/BigQuery/SQL and Pandas DataFrames.ipynb
08:38:42.829 DEBUG Processed: notebooks/Try-Datalab/notebooks/samples/Programming Language Correlation.ipynb
08:38:42.829 DEBUG Processed: notebooks/Try-Datalab/notebooks/samples/TensorFlow/Text Classification with TensorFlow.ipynb
08:38:42.830 DEBUG Processed: notebooks/Try-Datalab/notebooks/tutorials/Stackdriver Monitoring/Getting started.ipynb
08:38:42.830 DEBUG Processed: source/fonts/fontawesome-webfont.svg
08:38:42.841 DEBUG Processed: notebooks/Try-Datalab/notebooks/samples/ML Toolbox/Image Classification/Coast/Service End to End.ipynb
08:38:42.843 DEBUG Processed: notebooks/Try-Datalab/notebooks/samples/ML Toolbox/Image Classification/Coast/Setup.ipynb
08:38:42.844 DEBUG Processed: notebooks/Try-Datalab/notebooks/samples/ML Toolbox/Regression/Census/0 Readme and Setup.ipynb
08:38:42.844 DEBUG Processed: notebooks/Try-Datalab/notebooks/samples/ML Toolbox/Regression/Census/1 Local End to End.ipynb
08:38:42.845 DEBUG Processed: notebooks/Try-Datalab/notebooks/samples/ML Toolbox/Regression/Census/2 Service Preprocess.ipynb
08:38:42.845 DEBUG Processed: notebooks/Try-Datalab/notebooks/samples/ML Toolbox/Regression/Census/3 Service Train.ipynb
08:38:42.846 DEBUG Processed: notebooks/Try-Datalab/notebooks/samples/ML Toolbox/Regression/Census/4 Service Evaluate.ipynb
08:38:42.846 DEBUG Processed: notebooks/Try-Datalab/notebooks/samples/ML Toolbox/Regression/Census/5 Service Predict.ipynb
08:38:42.846 DEBUG Processed: notebooks/Try-Datalab/notebooks/samples/ML Toolbox/Regression/Census/6 Cleanup.ipynb
08:38:42.850 DEBUG Processed: notebooks/Try-Datalab/notebooks/samples/TensorFlow/Basic RNN TensorFlow Model Trained on Simulated Data.ipynb
08:38:42.850 DEBUG Processed: notebooks/Try-Datalab/notebooks/samples/contrib/mlworkbench/image_classification_flower/Flower Classification (large dataset experience).ipynb
08:38:42.853 DEBUG Processed: notebooks/Try-Datalab/notebooks/samples/ML Toolbox/Classification/Iris/1 Local End to End.ipynb
08:38:42.853 DEBUG Processed: notebooks/Try-Datalab/notebooks/samples/ML Toolbox/Image Classification/Coast/Local End to End.ipynb
08:38:42.854 DEBUG Processed: notebooks/Try-Datalab/notebooks/tutorials/Stackdriver Monitoring/Time-shifted data.ipynb
08:38:42.858 DEBUG Processed: _posts/意义疗法导论.md
08:38:42.859 DEBUG Processed: notebooks/Try-Datalab/notebooks/samples/contrib/mlworkbench/text_classification_20newsgroup/Text Classification --- 20NewsGroup (large data).ipynb
08:38:42.859 DEBUG Processed: notebooks/Try-Datalab/notebooks/tutorials/Stackdriver Monitoring/Group metrics.ipynb
08:38:42.863 DEBUG Processed: notebooks/Try-Datalab/notebooks/samples/ML Toolbox/Image Classification/Flower/Service End to End.ipynb
08:38:42.864 DEBUG Processed: notebooks/Try-Datalab/notebooks/tutorials/Data/Interactive Charts with Google Charting APIs.ipynb
08:38:42.868 DEBUG Processed: notebooks/Try-Datalab/notebooks/samples/ML Toolbox/Image Classification/Flower/Local End to End.ipynb
08:38:42.868 DEBUG Processed: notebooks/Try-Datalab/notebooks/samples/contrib/mlworkbench/structured_data_regression_taxi/Taxi Fare Model (full data).ipynb
08:38:42.868 DEBUG Processed: notebooks/Try-Datalab/notebooks/samples/contrib/mlworkbench/text_classification_20newsgroup/Text Classification --- 20NewsGroup (small data).ipynb
08:38:42.874 DEBUG Processed: _posts/论道德的谱系.md
08:38:42.880 DEBUG Processed: _posts/一个心理学家在集中营的经历.md
08:38:42.885 DEBUG Processed: _posts/人间失格.md
08:38:42.887 DEBUG Processed: notebooks/Try-Datalab/notebooks/samples/contrib/mlworkbench/structured_data_regression_taxi/Taxi Fare Model (small data).ipynb
08:38:42.901 DEBUG Processed: _posts/人間失格.md
08:38:42.961 DEBUG Processed: notebooks/Try-Datalab/notebooks/samples/contrib/mlworkbench/image_classification_flower/Flower Classification (small dataset experience).ipynb
08:38:42.964 DEBUG Processed: notebooks/Try-Datalab/notebooks/samples/TensorFlow/Image-to-Captions Model with TensorFlow.ipynb
08:38:43.016 DEBUG Processed: notebooks/Try-Datalab/notebooks/samples/TensorFlow/Machine Learning with Financial Data.ipynb
08:38:43.108 DEBUG Processed: notebooks/Try-Datalab/notebooks/samples/contrib/mlworkbench/structured_data_classification_police/Predict Case Resolution (small data experience).ipynb
08:38:44.732 DEBUG Rendering post: /home/jupyter-sheng_wei/hexo/source/_drafts/問題.md
08:38:44.733 DEBUG Rendering post: /home/jupyter-sheng_wei/hexo/source/_drafts/孤独之美.md
08:38:44.733 DEBUG Rendering post: /home/jupyter-sheng_wei/hexo/source/_posts/A-Real-time-Automatic-Level-Bar-Calibration-Based-on-Canny-Edge-Detection-and-Weighted-Least-Squares-Method.md
08:38:44.739 DEBUG Rendering post: /home/jupyter-sheng_wei/hexo/source/_posts/Hexo-Notebook.md
08:38:44.739 DEBUG Rendering post: /home/jupyter-sheng_wei/hexo/source/_posts/Hexo-研究.md
08:38:44.739 DEBUG Rendering post: /home/jupyter-sheng_wei/hexo/source/_posts/JavaScript.md
08:38:44.740 DEBUG Rendering post: /home/jupyter-sheng_wei/hexo/source/_posts/My-First-Test.md
08:38:44.740 DEBUG Rendering post: /home/jupyter-sheng_wei/hexo/source/_posts/Preface.md
08:38:44.740 DEBUG Rendering post: /home/jupyter-sheng_wei/hexo/source/_posts/Reference.md
08:38:44.740 DEBUG Rendering post: /home/jupyter-sheng_wei/hexo/source/_posts/Skype授業.md
08:38:44.740 DEBUG Rendering post: /home/jupyter-sheng_wei/hexo/source/_posts/Snippet.md
08:38:44.741 DEBUG Rendering post: /home/jupyter-sheng_wei/hexo/source/_posts/feelings-I-m-missing-you.md
08:38:44.741 DEBUG Rendering post: /home/jupyter-sheng_wei/hexo/source/_posts/hello-world.md
08:38:44.741 DEBUG Rendering post: /home/jupyter-sheng_wei/hexo/source/_posts/中國人前輩努力為我洗腦之後.md
08:38:44.741 DEBUG Rendering post: /home/jupyter-sheng_wei/hexo/source/_posts/关于意义疗法.md
08:38:44.741 DEBUG Rendering post: /home/jupyter-sheng_wei/hexo/source/_posts/心情糟透了.md
08:38:44.741 DEBUG Rendering post: /home/jupyter-sheng_wei/hexo/source/_posts/心理防卫机制.md
08:38:44.742 DEBUG Rendering post: /home/jupyter-sheng_wei/hexo/source/_posts/情殺.md
08:38:44.742 DEBUG Rendering post: /home/jupyter-sheng_wei/hexo/source/_posts/戀愛交往的兩個原則.md
08:38:44.742 DEBUG Rendering post: /home/jupyter-sheng_wei/hexo/source/_posts/我發現脫離了人群我就不能活.md
08:38:44.742 DEBUG Rendering post: /home/jupyter-sheng_wei/hexo/source/_posts/探索研究.md
08:38:44.742 DEBUG Rendering post: /home/jupyter-sheng_wei/hexo/source/_posts/日本語レッスン進捗.md
08:38:44.742 DEBUG Rendering post: /home/jupyter-sheng_wei/hexo/source/_posts/死蔭的幽谷.md
08:38:44.742 DEBUG Rendering post: /home/jupyter-sheng_wei/hexo/source/_posts/爱的吸引.md
08:38:44.743 DEBUG Rendering post: /home/jupyter-sheng_wei/hexo/source/_posts/睡不着.md
08:38:44.743 DEBUG Rendering post: /home/jupyter-sheng_wei/hexo/source/_posts/被开发环境的设计实现验证的问题困扰了三天之久.md
08:38:44.743 DEBUG Rendering post: /home/jupyter-sheng_wei/hexo/source/_posts/除了我的妻子以外,凡拉黑我的都去屎。.md
08:38:44.743 DEBUG Rendering post: /home/jupyter-sheng_wei/hexo/source/_posts/面膜.md
08:38:44.743 DEBUG Rendering post: /home/jupyter-sheng_wei/hexo/source/_drafts/堅持兩個月.md
08:38:44.743 DEBUG Rendering post: /home/jupyter-sheng_wei/hexo/source/_posts/就算累也必須堅持學日語.md
08:38:44.744 DEBUG Rendering post: /home/jupyter-sheng_wei/hexo/source/_posts/认耶稣为主.md
08:38:44.744 DEBUG Rendering post: /home/jupyter-sheng_wei/hexo/source/_posts/最近码代码手感不错哟.md
08:38:44.744 DEBUG Rendering post: /home/jupyter-sheng_wei/hexo/source/_posts/意义疗法导论.md
08:38:44.744 DEBUG Rendering post: /home/jupyter-sheng_wei/hexo/source/_posts/论道德的谱系.md
08:38:44.745 DEBUG Rendering post: /home/jupyter-sheng_wei/hexo/source/_posts/一个心理学家在集中营的经历.md
08:38:44.745 DEBUG Rendering post: /home/jupyter-sheng_wei/hexo/source/_posts/人间失格.md
08:38:44.745 DEBUG Rendering post: /home/jupyter-sheng_wei/hexo/source/_posts/人間失格.md
08:38:44.748 DEBUG Rendering post: /home/jupyter-sheng_wei/hexo/source/about/index.html
08:38:44.748 DEBUG Rendering post: /home/jupyter-sheng_wei/hexo/source/categories/index.html
08:38:44.748 DEBUG Rendering post: /home/jupyter-sheng_wei/hexo/source/tags/index.html
08:38:44.748 DEBUG Rendering post: /home/jupyter-sheng_wei/hexo/source/notebooks/Try-Datalab/notebooks/CONTRIBUTING.md
08:38:44.748 DEBUG Rendering post: /home/jupyter-sheng_wei/hexo/source/notebooks/Try-Datalab/notebooks/README.md
08:38:46.770 DEBUG Generator: page
08:38:46.770 DEBUG Generator: post
08:38:46.770 DEBUG Generator: archive
08:38:46.770 DEBUG Generator: category
08:38:46.771 DEBUG Generator: index
08:38:46.771 DEBUG Generator: tag
08:38:46.772 DEBUG Generator: asset
08:38:46.785 INFO  Hexo is running at http://0.0.0.0:4000/. Press Ctrl+C to stop.
08:38:46.855 DEBUG Database saved
^C
08:38:53.819 INFO  Bye!
08:38:53.865 DEBUG Database saved
In [ ]:
!cd ~/hexo && node_modules/hexo/bin/hexo generate --deploy
(node:3679) [DEP0061] DeprecationWarning: fs.SyncWriteStream is deprecated.
INFO  Start processing
INFO  Files loaded in 1.29 s
INFO  Generated: index.html
INFO  Generated: favicon.png
INFO  Generated: about/index.html
INFO  Generated: categories/index.html
INFO  Generated: tags/index.html
INFO  Generated: archives/index.html
INFO  Generated: notebooks/Remove-Duplicated-Notebook-CSS.ipynb
INFO  Generated: fancybox/blank.gif
INFO  Generated: fonts/fontawesome-webfont.eot
INFO  Generated: img/github-sprite.png
INFO  Generated: fancybox/jquery.fancybox.css
INFO  Generated: notebooks/Try-BigTable.ipynb
INFO  Generated: notebooks/Try-Colab.ipynb
INFO  Generated: notebooks/Try-Digdag.ipynb
INFO  Generated: notebooks/Try-FUSE.ipynb
INFO  Generated: notebooks/Try-GCloud-ML-Engine.ipynb
INFO  Generated: notebooks/Try-Google-AI-Platform.ipynb
INFO  Generated: notebooks/Try-IPython-Magics.ipynb
INFO  Generated: notebooks/Try-JS-Promise.ipynb
INFO  Generated: notebooks/Try-LightGBM.ipynb
INFO  Generated: notebooks/Try-NTERACT.ipynb
INFO  Generated: notebooks/Try-OpenBridge-Google-Bigquery.ipynb
INFO  Generated: notebooks/Try-TensorFlow.ipynb
INFO  Generated: notebooks/Try-paperboy.ipynb
INFO  Generated: fancybox/fancybox_loading.gif
INFO  Generated: fancybox/fancybox_loading@2x.gif
INFO  Generated: fancybox/fancybox_overlay.png
INFO  Generated: fancybox/fancybox_sprite.png
INFO  Generated: fancybox/fancybox_sprite@2x.png
INFO  Generated: fonts/fontawesome-webfont.woff
INFO  Generated: img/glyphicons-halflings-white.png
INFO  Generated: img/glyphicons-halflings.png
INFO  Generated: img/grid-18px-masked.png
INFO  Generated: img/grid-baseline-20px.png
INFO  Generated: archives/page/2/index.html
INFO  Generated: archives/2013/01/index.html
INFO  Generated: archives/2015/09/index.html
INFO  Generated: archives/2016/02/index.html
INFO  Generated: archives/2017/07/index.html
INFO  Generated: archives/2018/03/index.html
INFO  Generated: archives/2019/07/index.html
INFO  Generated: page/2/index.html
INFO  Generated: archives/page/3/index.html
INFO  Generated: archives/page/4/index.html
INFO  Generated: archives/2015/10/index.html
INFO  Generated: archives/2016/03/index.html
INFO  Generated: archives/2016/05/index.html
INFO  Generated: archives/2017/08/index.html
INFO  Generated: archives/2018/05/index.html
INFO  Generated: archives/2018/11/index.html
INFO  Generated: archives/2019/10/index.html
INFO  Generated: page/3/index.html
INFO  Generated: page/4/index.html
INFO  Generated: notebooks/Hexo-Notebook.ipynb
INFO  Generated: fonts/FontAwesome.otf
INFO  Generated: fonts/fontawesome-webfont.ttf
INFO  Generated: archives/2013/index.html
INFO  Generated: archives/2015/index.html
INFO  Generated: archives/2016/index.html
INFO  Generated: archives/2017/index.html
INFO  Generated: archives/2017/09/index.html
INFO  Generated: archives/2018/index.html
INFO  Generated: archives/2019/index.html
INFO  Generated: notebooks/Try-Datalab/notebooks/Hello World.ipynb
INFO  Generated: notebooks/Try-Notebook-Import/nbpackage/mynotebook.ipynb
INFO  Generated: css/comment.css
INFO  Generated: js/dbapi.js
INFO  Generated: notebooks/Kubernetes/Kubernetes-Tips.ipynb
INFO  Generated: notebooks/Try-Jupyter/Jupyter-Images.ipynb
INFO  Generated: notebooks/Try-Notebook-Dashboard/Try-IPython-Dashboard.ipynb
INFO  Generated: fonts/google-fonts/0AKsP294HTD-nvJgucYTaIbN6UDyHWBl620a-IRfuBk.woff
INFO  Generated: css/bootstrap-responsive.css
INFO  Generated: fancybox/jquery.fancybox.pack.js
INFO  Generated: js/comment.js
INFO  Generated: css/google-fonts.css
INFO  Generated: css/highlight-default.min.css
INFO  Generated: css/highlight.css
INFO  Generated: css/responsive.css
INFO  Generated: js/gallery.js
INFO  Generated: js/github.js
INFO  Generated: js/jquery.imagesloaded.min.js
INFO  Generated: js/main.js
INFO  Generated: js/search.js
INFO  Generated: js/spin.min.js
INFO  Generated: js/timeago.min.js
INFO  Generated: notebooks/Kubernetes/Try-Cluster-Autoscaling.ipynb
INFO  Generated: notebooks/Kubernetes/Try-Skaffold.ipynb
INFO  Generated: notebooks/Kubernetes/Try-Spinnaker-Operator.ipynb
INFO  Generated: notebooks/Kubernetes/Try-Volcano.ipynb
INFO  Generated: notebooks/Try-Datalab/Readme-Datalab.ipynb
INFO  Generated: notebooks/Try-Datalab/Solve-Py37-PyDatalab.ipynb
INFO  Generated: notebooks/Try-Datalab/Try-Datalab.ipynb
INFO  Generated: notebooks/Try-Jupyter/Jupyter-Magic.ipynb
INFO  Generated: notebooks/Try-Jupyter/Jupyter-Tips.ipynb
INFO  Generated: notebooks/Try-Jupyter/Try-Jupyter-Diff-Merge.ipynb
INFO  Generated: notebooks/Try-Jupyter/Try-Jupyter-Frontends.ipynb
INFO  Generated: notebooks/Try-Jupyter/Try-JupyterHub.ipynb
INFO  Generated: notebooks/Try-Jupyter/Try-NBViewer.ipynb
INFO  Generated: notebooks/Try-Notebook-Dashboard/Try-Jupyter-Dashboards.ipynb
INFO  Generated: notebooks/Try-Notebook-Import/Importing Notebooks.ipynb
INFO  Generated: notebooks/Try-Notebook-Import/Try-Notebook-Import.ipynb
INFO  Generated: notebooks/Try-Notebook-Import/Try_To_Import_Python.py
INFO  Generated: notebooks/Try-Datalab/notebooks/LICENSE.txt
INFO  Generated: notebooks/Try-Datalab/notebooks/Readme.ipynb
INFO  Generated: fonts/google-fonts/2UX7WLTfW3W8TclTUvlFyQ.woff
INFO  Generated: fonts/google-fonts/LKf8nhXsWg5ybwEGXk8UBQ.woff
INFO  Generated: fonts/google-fonts/PIPMHY90P7jtyjpXuZ2cLD8E0i7KZn-EPnyo3HZu7kw.woff
INFO  Generated: fonts/google-fonts/UyYrYy3ltEffJV9QueSi4RdbPw3QSf9R-kE0EsQUn2A.woff
INFO  Generated: fonts/google-fonts/cj2hUnSRBhwmSPr9kS5899kZXW4sYc4BjuAIFc1SXII.woff
INFO  Generated: fonts/google-fonts/lILlYDvubYemzYzN7GbLkHhCUOGz7vYGh680lGh-uXM.woff
INFO  Generated: fonts/google-fonts/0XxGQsSc1g4rdRdjJKZrNBsxEYwM7FgeyaSgU71cLG0.woff
INFO  Generated: archives/2017/09/page/2/index.html
INFO  Generated: archives/2017/page/2/index.html
INFO  Generated: css/font-awesome.css
INFO  Generated: js/bootstrap.min.js
INFO  Generated: js/marked.js
INFO  Generated: css/style.css
INFO  Generated: notebooks/Try-Datalab/notebooks/samples/Programming Language Correlation.ipynb
INFO  Generated: notebooks/Try-Datalab/notebooks/samples/Anomaly Detection in HTTP Logs.ipynb
INFO  Generated: notebooks/Try-Datalab/notebooks/CONTRIBUTING.html
INFO  Generated: notebooks/Try-Datalab/notebooks/README.html
INFO  Generated: notebooks/Try-Datalab/notebooks/tutorials/BigQuery/SQL and Pandas DataFrames.ipynb
INFO  Generated: notebooks/Try-Datalab/notebooks/samples/TensorFlow/Text Classification with TensorFlow.ipynb
INFO  Generated: css/themes/common.css
INFO  Generated: notebooks/Try-Datalab/notebooks/tutorials/Stackdriver Monitoring/Getting started.ipynb
INFO  Generated: notebooks/Try-Datalab/notebooks/intro/Introduction to Notebooks.ipynb
INFO  Generated: notebooks/Try-Notebook-Import/nbpackage/nbs/other.ipynb
INFO  Generated: notebooks/Try-Datalab/notebooks/samples/contrib/README.txt
INFO  Generated: notebooks/Try-Datalab/notebooks/tutorials/Storage/Storage Commands.ipynb
INFO  Generated: css/themes/default.css
INFO  Generated: notebooks/Try-Datalab/notebooks/samples/Exploring Genomics Data.ipynb
INFO  Generated: notebooks/Try-Datalab/notebooks/intro/Introduction to Python.ipynb
INFO  Generated: notebooks/Try-Datalab/notebooks/intro/Using Datalab - Accessing Cloud Data.ipynb
INFO  Generated: notebooks/Try-Datalab/notebooks/samples/Conversion Analysis with Google Analytics Data.ipynb
INFO  Generated: notebooks/Try-Datalab/notebooks/tutorials/BigQuery/BigQuery APIs.ipynb
INFO  Generated: notebooks/Try-Datalab/notebooks/tutorials/BigQuery/BigQuery Magic Commands and DML.ipynb
INFO  Generated: notebooks/Try-Datalab/notebooks/tutorials/BigQuery/BigQuery Parameterization.ipynb
INFO  Generated: notebooks/Try-Datalab/notebooks/tutorials/BigQuery/Hello BigQuery.ipynb
INFO  Generated: notebooks/Try-Datalab/notebooks/tutorials/BigQuery/Importing and Exporting Data.ipynb
INFO  Generated: notebooks/Try-Datalab/notebooks/tutorials/BigQuery/UDF Testing in the Notebook.ipynb
INFO  Generated: notebooks/Try-Datalab/notebooks/tutorials/BigQuery/UDFs in BigQuery.ipynb
INFO  Generated: notebooks/Try-Datalab/notebooks/tutorials/BigQuery/UDFs using Code in Cloud Storage.ipynb
INFO  Generated: notebooks/Try-Datalab/notebooks/tutorials/BigQuery/Using External Tables from BigQuery.ipynb
INFO  Generated: notebooks/Try-Datalab/notebooks/tutorials/BigQuery/BigQuery Commands.ipynb
INFO  Generated: notebooks/Try-Datalab/notebooks/tutorials/Storage/Storage APIs.ipynb
INFO  Generated: 2019/07/17/心情糟透了/index.html
INFO  Generated: 2018/11/16/中國人前輩努力為我洗腦之後/index.html
INFO  Generated: 2017/09/30/爱的吸引/index.html
INFO  Generated: 2016/05/16/A-Real-time-Automatic-Level-Bar-Calibration-Based-on-Canny-Edge-Detection-and-Weighted-Least-Squares-Method/index.html
INFO  Generated: 2015/10/23/Reference/index.html
INFO  Generated: 2013/01/25/feelings-I-m-missing-you/index.html
INFO  Generated: 2018/05/19/探索研究/index.html
INFO  Generated: 2018/03/27/日本語レッスン進捗/index.html
INFO  Generated: 2017/08/22/面膜/index.html
INFO  Generated: 2017/07/24/Snippet/index.html
INFO  Generated: 2016/03/03/hello-world/index.html
INFO  Generated: 2015/09/23/关于意义疗法/index.html
INFO  Generated: 2019/10/05/Hexo-Notebook/index.html
INFO  Generated: 2016/02/03/意义疗法导论/index.html
INFO  Generated: 2019/07/16/死蔭的幽谷/index.html
INFO  Generated: 2017/09/29/戀愛交往的兩個原則/index.html
INFO  Generated: 2017/09/22/睡不着/index.html
INFO  Generated: 2017/09/19/情殺/index.html
INFO  Generated: 2017/09/18/被开发环境的设计实现验证的问题困扰了三天之久/index.html
INFO  Generated: 2017/09/07/认耶稣为主/index.html
INFO  Generated: 2017/09/04/我發現脫離了人群我就不能活/index.html
INFO  Generated: 2017/09/03/心理防卫机制/index.html
INFO  Generated: 2017/09/01/就算累也必須堅持學日語/index.html
INFO  Generated: 2017/08/20/Skype授業/index.html
INFO  Generated: 2017/08/16/JavaScript/index.html
INFO  Generated: 2017/07/21/除了我的妻子以外,凡拉黑我的都去屎。/index.html
INFO  Generated: 2015/09/03/My-First-Test/index.html
INFO  Generated: 2018/11/11/论道德的谱系/index.html
INFO  Generated: 2017/09/14/人間失格/index.html
INFO  Generated: 2017/07/22/Hexo-研究/index.html
INFO  Generated: 2015/09/30/最近码代码手感不错哟/index.html
INFO  Generated: 2017/09/14/人间失格/index.html
INFO  Generated: 2016/02/03/一个心理学家在集中营的经历/index.html
INFO  Generated: 2015/09/03/Preface/index.html
INFO  Generated: js/highlight.min.js
INFO  Generated: fonts/fontawesome-webfont.svg
INFO  Generated: notebooks/Try-Datalab/notebooks/tutorials/Stackdriver Monitoring/Time-shifted data.ipynb
INFO  Generated: notebooks/Try-Datalab/notebooks/samples/TensorFlow/Basic RNN TensorFlow Model Trained on Simulated Data.ipynb
INFO  Generated: notebooks/Try-Datalab/notebooks/samples/TensorFlow/LSTM Punctuation Model With TensorFlow.ipynb
INFO  Generated: notebooks/Try-Datalab/notebooks/tutorials/BigQuery/SQL Query Composition.ipynb
INFO  Generated: notebooks/Try-Datalab/notebooks/samples/ML Toolbox/Image Classification/Coast/Service End to End.ipynb
INFO  Generated: notebooks/Try-Datalab/notebooks/samples/contrib/mlworkbench/text_classification_20newsgroup/Text Classification --- 20NewsGroup (large data).ipynb
INFO  Generated: notebooks/Try-Datalab/notebooks/samples/ML Toolbox/Regression/Census/0 Readme and Setup.ipynb
INFO  Generated: notebooks/Try-Datalab/notebooks/samples/ML Toolbox/Classification/Iris/1 Local End to End.ipynb
INFO  Generated: notebooks/Try-Datalab/notebooks/samples/contrib/pipeline/Airflow Setup.ipynb
INFO  Generated: notebooks/Try-Datalab/notebooks/tutorials/Stackdriver Monitoring/Group metrics.ipynb
INFO  Generated: notebooks/Try-Datalab/notebooks/samples/contrib/mlworkbench/text_classification_20newsgroup/Text Classification --- 20NewsGroup (small data).ipynb
INFO  Generated: notebooks/Try-Datalab/notebooks/samples/contrib/pipeline/BigQuery Pipeline.ipynb
INFO  Generated: notebooks/Try-Datalab/notebooks/samples/ML Toolbox/Image Classification/Coast/Setup.ipynb
INFO  Generated: notebooks/Try-Datalab/notebooks/samples/ML Toolbox/Regression/Census/1 Local End to End.ipynb
INFO  Generated: notebooks/Try-Datalab/notebooks/samples/ML Toolbox/Regression/Census/2 Service Preprocess.ipynb
INFO  Generated: notebooks/Try-Datalab/notebooks/samples/ML Toolbox/Regression/Census/3 Service Train.ipynb
INFO  Generated: notebooks/Try-Datalab/notebooks/samples/ML Toolbox/Regression/Census/4 Service Evaluate.ipynb
INFO  Generated: notebooks/Try-Datalab/notebooks/samples/ML Toolbox/Regression/Census/5 Service Predict.ipynb
INFO  Generated: notebooks/Try-Datalab/notebooks/samples/ML Toolbox/Regression/Census/6 Cleanup.ipynb
INFO  Generated: notebooks/Try-Datalab/notebooks/samples/ML Toolbox/Image Classification/Flower/Service End to End.ipynb
INFO  Generated: notebooks/Try-Datalab/notebooks/samples/contrib/mlworkbench/image_classification_flower/Flower Classification (large dataset experience).ipynb
INFO  Generated: notebooks/Try-Datalab/notebooks/samples/ML Toolbox/Image Classification/Coast/Local End to End.ipynb
INFO  Generated: notebooks/Try-Datalab/notebooks/tutorials/Data/Interactive Charts with Google Charting APIs.ipynb
INFO  Generated: notebooks/Try-Datalab/notebooks/samples/ML Toolbox/Image Classification/Flower/Local End to End.ipynb
INFO  Generated: notebooks/Try-Datalab/notebooks/samples/contrib/mlworkbench/structured_data_regression_taxi/Taxi Fare Model (full data).ipynb
INFO  Generated: css/bootstrap.min.css
INFO  Generated: notebooks/Try-Datalab/notebooks/samples/contrib/mlworkbench/structured_data_regression_taxi/Taxi Fare Model (small data).ipynb
INFO  Generated: js/jquery-2.0.3.min.js
INFO  Generated: css/themes/bootstrap.css
INFO  Generated: css/themes/united.css
INFO  Generated: css/themes/cerulean.css
INFO  Generated: css/themes/cosmo.css
INFO  Generated: css/themes/cyborg.css
INFO  Generated: css/themes/darkly.css
INFO  Generated: css/themes/journal.css
INFO  Generated: css/themes/readable.css
INFO  Generated: css/themes/sandstone.css
INFO  Generated: css/themes/simplex.css
INFO  Generated: css/themes/spacelab.css
INFO  Generated: css/themes/superhero.css
INFO  Generated: css/themes/yeti.css
INFO  Generated: css/themes/flatly.css
INFO  Generated: css/themes/lumen.css
INFO  Generated: css/themes/slate.css
INFO  Generated: css/themes/paper.css
INFO  Generated: notebooks/Try-Datalab/notebooks/samples/contrib/mlworkbench/image_classification_flower/Flower Classification (small dataset experience).ipynb
INFO  Generated: css/notebook.css
INFO  Generated: notebooks/Try-Datalab/notebooks/samples/TensorFlow/Image-to-Captions Model with TensorFlow.ipynb
INFO  Generated: notebooks/Try-Datalab/notebooks/samples/TensorFlow/Machine Learning with Financial Data.ipynb
INFO  Generated: notebooks/Try-Datalab/notebooks/samples/contrib/mlworkbench/structured_data_classification_police/Predict Case Resolution (small data experience).ipynb
INFO  231 files generated in 2.23 s
INFO  Deploying: git
INFO  Clearing .deploy folder...
INFO  Copying files from public folder...
[master 8821746] Site updated: 2019-10-05 17:38:58
 5 files changed, 1117 insertions(+), 1381 deletions(-)
Username for 'https://github.com': ^C
INFO  Good bye
INFO  Deploy done: git
Read More