import ( "io/ioutil" "os" "path" "sort" "github.com/kandoo/beehive/Godeps/_workspace/src/github.com/coreos/pkg/capnslog" ) const ( privateFileMode = 0600 ) var ( plog = capnslog.NewPackageLogger("github.com/coreos/etcd/pkg", "fileutil") ) // IsDirWriteable checks if dir is writable by writing and removing a file // to dir. It returns nil if dir is writable. func IsDirWriteable(dir string) error { f := path.Join(dir, ".touch") if err := ioutil.WriteFile(f, []byte(""), privateFileMode); err != nil { return err } return os.Remove(f) } // ReadDir returns the filenames in the given directory in sorted order. func ReadDir(dirpath string) ([]string, error) { dir, err := os.Open(dirpath)
// You may obtain a copy of the License at // // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. package pbutil import "github.com/kandoo/beehive/Godeps/_workspace/src/github.com/coreos/pkg/capnslog" var ( plog = capnslog.NewPackageLogger("github.com/coreos/etcd/pkg", "flags") ) type Marshaler interface { Marshal() (data []byte, err error) } type Unmarshaler interface { Unmarshal(data []byte) error } func MustMarshal(m Marshaler) []byte { d, err := m.Marshal() if err != nil { plog.Panicf("marshal should never fail (%v)", err) }
metadataType int64 = iota + 1 entryType stateType crcType snapshotType // the owner can make/remove files inside the directory privateDirMode = 0700 // the expected size of each wal segment file. // the actual size might be bigger than it. segmentSizeBytes = 64 * 1000 * 1000 // 64MB ) var ( plog = capnslog.NewPackageLogger("github.com/coreos/etcd", "wal") ErrMetadataConflict = errors.New("wal: conflicting metadata found") ErrFileNotFound = errors.New("wal: file not found") ErrCRCMismatch = errors.New("wal: crc mismatch") ErrSnapshotMismatch = errors.New("wal: snapshot mismatch") ErrSnapshotNotFound = errors.New("wal: snapshot not found") crcTable = crc32.MakeTable(crc32.Castagnoli) ) // WAL is a logical repersentation of the stable storage. // WAL is either in read mode or append mode but not both. // A newly created WAL is in append mode, and ready for appending records. // A just opened WAL is in read mode, and ready for reading records. // The WAL will be ready for appending after reading out all the previous records. type WAL struct {
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. package main import ( "flag" oldlog "log" "os" "github.com/kandoo/beehive/Godeps/_workspace/src/github.com/coreos/pkg/capnslog" ) var logLevel = capnslog.INFO var log = capnslog.NewPackageLogger("github.com/coreos/pkg/capnslog/cmd", "main") var dlog = capnslog.NewPackageLogger("github.com/coreos/pkg/capnslog/cmd", "dolly") func init() { flag.Var(&logLevel, "log-level", "Global log level.") } func main() { rl := capnslog.MustRepoLogger("github.com/coreos/pkg/capnslog/cmd") capnslog.SetFormatter(capnslog.NewStringFormatter(os.Stderr)) // We can parse the log level configs from the command line flag.Parse() if flag.NArg() > 1 { cfg, err := rl.ParseLogLevelConfig(flag.Arg(1)) if err != nil {