Skip to content

Instantly share code, notes, and snippets.

View ionelmc's full-sized avatar
🙃
wat

Ionel Cristian Mărieș ionelmc

🙃
wat
View GitHub Profile
import errno
import logging
import os
import signal
import sys
import threading
import time
from itertools import count
from logging import getLogger
from logging import getLogger
logger = getLogger(__name__)
import gc
import os
os.environ['MP_LOG'] = '1'
import time
import sys
from tqdm import tqdm
from celery import Celery

Install dev version of manhole:

pip install https://github.com/ionelmc/python-manhole/archive/master.zip

Poke with USR2, and run (use correct pid):

socat readline unix-connect:/tmp/manhole-12345
@ionelmc
ionelmc / supervisor-conf-order.patch
Last active August 29, 2015 13:56
RPM build scripts for supervisord 3.0 (CentOS/RHEL)
--- a/supervisor/options.py
+++ b/supervisor/options.py
@@ -539,11 +539,11 @@
base = os.path.dirname(os.path.abspath(fp.name))
else:
base = '.'
for pattern in files:
pattern = os.path.join(base, pattern)
- for filename in glob.glob(pattern):
+ for filename in sorted(glob.glob(pattern)):
[2014-01-31 13:50:36,821: DEBUG/MainProcess] | Worker: Preparing bootsteps.
[2014-01-31 13:50:36,822: DEBUG/MainProcess] | Worker: Building graph...
[2014-01-31 13:50:36,822: DEBUG/MainProcess] | Worker: New boot order: {Timer, Hub, Queues (intra), Pool, Autoscaler, Autoreloader, Beat, StateDB, Consumer}
[2014-01-31 13:50:36,826: DEBUG/MainProcess] | Consumer: Preparing bootsteps.
[2014-01-31 13:50:36,826: DEBUG/MainProcess] | Consumer: Building graph...
[2014-01-31 13:50:36,827: DEBUG/MainProcess] | Consumer: New boot order: {Connection, Events, Heart, Mingle, Tasks, Control, Agent, Gossip, event loop}
[2014-01-31 13:50:36,828: CRITICAL/MainProcess] Getting it on !

-------------- celery@dkbox v3.1.8 (Cipater)
---- **** -----
[2014-01-30 16:19:03,357: INFO/MainProcess] Task __main__.ok[60ce5180-4acd-404c-905d-1c441212a6e3] succeeded in 0.00657280000087s: 'ok'
[DEBUG/MainProcess] Supervisor: cleaning up worker 90
[DEBUG/MainProcess] Supervisor: worked 90 joined
[DEBUG/MainProcess] Supervisor: cleaning up worker 39
[DEBUG/MainProcess] Supervisor: worked 39 joined
[DEBUG/MainProcess] added worker
[INFO/Worker-177466] child process 22679 calling self.run()
[DEBUG/MainProcess] added worker
[2014-01-30 16:19:03,410: ERROR/MainProcess] KeyError(188,) while getting callback in Hub. event=4. fileno=188
[2014-01-30 16:19:03,410: ERROR/MainProcess] KeyError(396,) while getting callback in Hub. event=4. fileno=396
@ionelmc
ionelmc / idle-autoshutdown.py
Created January 13, 2014 15:55
Idle autoshutdown celery bootstep, from http://pastie.org/8629675
from celery import Celery
from celery import bootsteps
from celery.worker import consumer
class MaxIdleTimeStep(bootsteps.StartStopStep):
idle_max = 1.0
last_active = None
requires = (consumer.Tasks, )
@ionelmc
ionelmc / headerid.py
Last active March 17, 2018 17:39
Pelican plugin to add permalinks (headerid) to every section header when using reStructuredText. You can see it in action at http://blog.ionelmc.ro
from pelican import readers
from pelican.readers import PelicanHTMLTranslator
from pelican import signals
from docutils import nodes
def register():
class HeaderIDPatchedPelicanHTMLTranslator(PelicanHTMLTranslator):
def depart_title(self, node):
close_tag = self.context[-1]
parent = node.parent
Microsoft Windows [Version 6.2.9200]
(c) 2012 Microsoft Corporation. All rights reserved.
C:\Users\ionel_000\Documents\GitHub>pip wheel
Usage: pip COMMAND [OPTIONS]
No command by the name pip-script.py wheel
(maybe you meant "pip-script.py help")
C:\Users\ionel_000\Documents\GitHub>pip --version
pip 1.2.1 from d:\python27\lib\site-packages\pip-1.2.1-py2.7.egg (python 2.7)
@ionelmc
ionelmc / gist:8317686
Created January 8, 2014 14:34
sample celery worker supervisord conf
[program:node-name]
environment=DJANGO_SETTINGS_MODULE="project.settings",MPLCONFIGDIR="/var/project"
command=/virtualenv/bin/celery worker
--hostname=node-name@%%h
--concurrency=5
--events
--loglevel=INFO
--app=project.celeryapp
-Ofair
directory=/var/project