はじめに こんにちは、藤本です。 過去3エントリでAnsibleモジュールを開発する上でのルールや開発に便利なユーティリティライブラリ、実際にAnsibleモジュールを開発する方法をご紹介しました。 Ansibleのモジュール開発(基礎編) Ansibleのモジュール開発(Python実装編) Ansibleのモジュール開発(実践編) 今回はAnsibleモジュール開発において、予期せぬエラー時に失敗を返すことができますが、何が起きたのか、何が原因で失敗したのかトレースに手こずりました。そこで今回はデバッギングに役立ったロギング、Ansibleが提供するテストツールをご紹介します。 ロギング プログラム開発におけるログ出力は適切な処理フローであるかのトラッキングや、トラブルの切り分けに必要なものとなります。AnsibleもAnsibleModuleクラスのロギングメソッドを利用することでモ
A Linux kernel module to grab keys pressed in the keyboard, or a keylogger. It's also an academic project for devs willing to learn Linux kernel module programming, with extensive comments, checkpatch.pl scanned code, standards-compliant Makefile and DKMS support. spy was initially written for the US keyboard (and conforming laptops). By default it shows human-readable strings for the keys pressed
Dynamic Kernel Module Support(DKMS)は、アウトオブツリーモジュールを公開する上での強力な味方である。 Linuxカーネルは、モジュールを動的にインストールすることが出来る。この用途は主にドライバだが、ファイルシステムやDMターゲットの開発にもこの機構を使うことが出来る。ここでインストールとは、システムのどの場所からでもそのモジュールをmodprobe可能になってることと定義する(それ以降はmodprobe。confの仕事である)。 モジュールを、現在のカーネル向けにコンパイルして、インストールして、モジュールを修正した時にはまた新しいものをインストールするというのは、作業量的には大したことないのだが、果たしてあなたはモジュールをインストールする仕組みを"完全に"理解していて、あなたの理解が全ディストリビューションに通用するものであることを保証出来るだろうか
はじめに こんにちは、最近どっぷりサバゲーにハマってる藤本です。 Ansibleは数多くの標準モジュールを提供しています。標準モジュールを利用、もしくは標準モジュールを組み合わせて利用することで多くの設定を実現することができます。それでもケースによっては標準モジュールではできないことを実施したくなることがあります。そういった場合にAnsibleは独自のモジュールを実装することで任意の処理を行うことができます。今回は公式ドキュメントをなぞってみて、Ansibleで独自のモジュールを作成する基礎をご紹介します。 その他のAnsibleのモジュール開発シリーズは以下をご参照ください。 Ansibleのモジュール開発(Python実装編) Ansibleのモジュール開発(実践編) Ansibleのモジュール開発(テスト編) 公式ドキュメントのページは以下となります。 http://docs.ans
26 Aug 2015 Building Python modules with Go 1.5 tl;dr: with Go 1.5 you can build .so objects and import them as Python modules, running Go code (instead of C) directly from Python. Here's the code. The Go 1.5 release brings a number of nifty changes. The one we will be playing with today is the ability of the standard toolchain to build libraries (.so, .a) exporting a C ABI. (This is just one of a
Python のモジュールは通常であれば import 文を使ってあらかじめ静的にロードする。 では、プログラムの中で動的にロードしたい場合にはどうしたらいいのか?というのが今回の話。 結論から先に言うと今は標準ライブラリの importlib を使うのが推奨される方法のようだ。 使った環境は次の通り。 $ python --version Python 3.5.1 $ sw_vers ProductName: Mac OS X ProductVersion: 10.11.3 BuildVersion: 15D21 下準備 まずは適当に Python のモジュールを作っておく。 Python のモジュールというのは単なる Python ファイルのことだ。 $ cat << 'EOF' > helloworld.py #!/usr/bin/env python # -*- coding: u
今,Instant Flask Web Development でflaskの勉強をしています.その本で,__init__.pyはpythonのディレクトリを表すために用いますと書かれていて,他に意味があるのかなと思い,調べました. 今回は__init__.pyの意味について軽くまとめます. __init__.pyの役割 __init__.pyの主な役割は2つあります. まず,1つ目は__init__.pyはpythonスクリプトがあるディレクトリを表す役割をなします.2つ目の役割としては必要なモジュールをimportするなどの初期化処理を記載し,初期化の役割を担う役目があります. ですが,基本はpythonスクリプトがあるディレクトリを表すだけに使われるので,空のファイルです. __init__.pyのメリット __init__.pyのメリットは異なるディレクトリのファイルをインポートす
最近、このモジュールを妻に紹介したところ、そのシンプルさと実用性に驚いていました。 joblib joblibの存在は以前から知ってはいたものの、実際のところはよく理解しておらず、いろいろな機能を寄せ集めたようなモジュールだと思っていました。まあ、その印象は今もあまり変わりませんが、実は非常に便利なモジュールだったのです。私は Flowminder の同僚から再度joblibを勧められて、このモジュールをデータ分析用のコードに幅広く使用しました。では、その機能について紹介しましょう。joblibは大きく分けて、 キャッシング 、 並列化 、 永続化 (データの保存と読み込み)の3つの機能から成ります。実を言うと、私はまだ並列プログラミングの機能は使ったことがないのですが、あとの2つの機能は頻繁に使ってきました。 キャッシング機能とは、シンプルなデコレータを使って、関数を簡単に”メモ化”する
Python 3.1 で導入された importlib は一部が Python 2.7 にバックポートされています。import フックを自分で作成する必要のある人はあまりいませんが、自分の用途に使えるのか調べてみます。(3.1 で導入されましたが、以下は 3.3 で調べたものです。) PEP 302 [1] およびマニュアルより。 import をカスタマイズしやすく。これまでは __import__ を置き換えるしかなかった Python での import の実装を提供し、拡張などからも利用しやすく これまでは、import をカスタマイズしようとすると、組み込みの __import__ を独自の実装で置き換えるしかありませんでした。この場合、既存の import で足りる分は __import__ を呼び出したり、それも独自の方法で行うことになります。多くのライブラリがこれを行って
C実践プログラミング 第3版 作者:Steve Ouallineオライリー・ジャパンAmazon 恩師に言われた言葉 Geek女優の池澤あやかさんに会いたいと思っている@yutakikuchi_です。 池澤さんはRubyが出来てSFCで女優さんなんて羨ましいですね〜。僕なんてRubyは得意じゃないし東京とは言えないような都心から離れた場所の地味な国立大だし、何よりお金も無いパンピーだしね〜。 僕の学生時代にもRubyはあったんですけどRailsはまだ出始めでそんなに流行っている雰囲気は無かったし、Webを書くには面倒くさいJSP/ServletかPerlかって感じでした。ApacheのModuleでWebを書ける事も学生ながら知っていたんですが、ポインタ、メモリの動的確保/解放の間違いが頻発して開発効率が落ちるから極力Javaで、どうしてもCを書かなければ行けない時はC++で逃げてました。
以前からCPANで公開していたモジュールがあるんですが、日本語での解説ドキュメントがなかったのと、最近大幅にブラッシュアップしたので、せっかくなので紹介記事を書きます。 HTML::Feature - Extract Feature Sentences From HTML Documents 「えいちてぃえむえる::ふぃーちゃー」と読みます。 ブログやニュース記事など様々なHTML文書から「重要部分」を推測して抽出してくれる perl モジュールです。 「重要部分」とはいわゆる「本文」のことですね。本文抽出とか焦点抽出とか色々な言い方があるかと思いますが、まぁ要するに特徴的な部分を推測して抽出するわけです。 どういうものか。 例えばブログ記事からヘッダーやフッター、その他のナビゲーションブロックを除いた「記事らしき部分」だけを切り取りたい、とします。 ぱっと思いつくのは「特定のコメントタグ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く